home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1994-03-17 | 14.0 KB | [TEXT/ALFA] |
open in:
MacOS 8.1
|
Win98
|
DOS
browse contents |
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
Confidence | Program | Detection | Match Type | Support
|
---|
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, inited, Thu Mar 17 00:09:55 1994, modified Thu Mar 17 00:09:55 1994, creator Alpha editor, type ASCII, 13710 bytes "misc.tcl" , at 0x360e 382 bytes resource
| default (weak)
| |
99%
| file
| data
| default
| |
74%
| TrID
| Macintosh plain text (MacBinary)
| default
| |
25%
| TrID
| MacBinary 2
| default (weak)
| |
100%
| siegfried
| fmt/1762 MacBinary (II)
| default
| |
100%
| lsar
| MacBinary
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [ALFA] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 08 6d 69 73 63 2e 74 | 63 6c 00 00 00 00 00 00 |..misc.t|cl......|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 41 4c 46 | 41 01 00 00 00 00 00 00 |.TEXTALF|A.......|
|00000050| 00 00 00 00 00 35 8e 00 | 00 01 7e a9 ad 96 a3 a9 |.....5..|..~.....|
|00000060| ad 96 a3 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 50 15 00 00 |........|....P...|
|00000080| 23 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |#=======|========|
|00000090| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 23 20 49 |========|====.# I|
|000000d0| 6e 66 6f 72 6d 61 74 69 | 6f 6e 20 61 62 6f 75 74 |nformati|on about|
|000000e0| 20 61 20 73 65 6c 65 63 | 74 69 6f 6e 20 6f 72 20 | a selec|tion or |
|000000f0| 77 69 6e 64 6f 77 2e 0d | 23 3d 3d 3d 3d 3d 3d 3d |window..|#=======|
|00000100| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000110| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000120| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000130| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000140| 3d 3d 3d 3d 0d 70 72 6f | 63 20 77 6f 72 64 43 6f |====.pro|c wordCo|
|00000150| 75 6e 74 20 7b 7d 20 7b | 0d 09 69 66 20 7b 5b 73 |unt {} {|..if {[s|
|00000160| 65 74 20 63 68 61 72 73 | 20 5b 65 78 70 72 20 7b |et chars| [expr {|
|00000170| 5b 73 65 6c 45 6e 64 5d | 20 2d 20 5b 67 65 74 50 |[selEnd]| - [getP|
|00000180| 6f 73 5d 7d 5d 5d 7d 20 | 7b 0d 09 09 73 65 74 20 |os]}]]} |{...set |
|00000190| 6c 69 6e 65 73 20 5b 65 | 78 70 72 20 7b 5b 6c 69 |lines [e|xpr {[li|
|000001a0| 6e 64 65 78 20 5b 70 6f | 73 54 6f 52 6f 77 43 6f |ndex [po|sToRowCo|
|000001b0| 6c 20 5b 73 65 6c 45 6e | 64 5d 5d 20 30 5d 20 2d |l [selEn|d]] 0] -|
|000001c0| 20 5b 6c 69 6e 64 65 78 | 20 5b 70 6f 73 54 6f 52 | [lindex| [posToR|
|000001d0| 6f 77 43 6f 6c 20 5b 67 | 65 74 50 6f 73 5d 5d 20 |owCol [g|etPos]] |
|000001e0| 30 5d 7d 5d 0d 09 09 73 | 65 74 20 74 65 78 74 20 |0]}]...s|et text |
|000001f0| 5b 67 65 74 53 65 6c 65 | 63 74 5d 0d 09 7d 20 65 |[getSele|ct]..} e|
|00000200| 6c 73 65 20 7b 0d 09 09 | 73 65 74 20 63 68 61 72 |lse {...|set char|
|00000210| 73 20 5b 6d 61 78 50 6f | 73 5d 0d 09 09 73 65 74 |s [maxPo|s]...set|
|00000220| 20 6c 69 6e 65 73 20 5b | 6c 69 6e 64 65 78 20 5b | lines [|lindex [|
|00000230| 70 6f 73 54 6f 52 6f 77 | 43 6f 6c 20 24 63 68 61 |posToRow|Col $cha|
|00000240| 72 73 5d 20 30 5d 0d 09 | 09 73 65 74 20 74 65 78 |rs] 0]..|.set tex|
|00000250| 74 20 5b 67 65 74 54 65 | 78 74 20 30 20 5b 6d 61 |t [getTe|xt 0 [ma|
|00000260| 78 50 6f 73 5d 5d 0d 09 | 7d 0d 09 69 66 20 7b 5b |xPos]]..|}..if {[|
|00000270| 72 65 67 73 75 62 20 2d | 61 6c 6c 20 7b 5b 21 3d |regsub -|all {[!=|
|00000280| 3b 2e 2c 5c 28 5c 23 5c | 3d 5c 29 3a 5c 7b 5c 22 |;.,\(\#\|=\):\{\"|
|00000290| 5c 7d 5d 7d 20 24 74 65 | 78 74 20 22 20 22 20 72 |\}]} $te|xt " " r|
|000002a0| 65 74 5d 7d 20 7b 0d 09 | 09 73 65 74 20 77 6f 72 |et]} {..|.set wor|
|000002b0| 64 73 20 5b 6c 6c 65 6e | 67 74 68 20 24 72 65 74 |ds [llen|gth $ret|
|000002c0| 5d 0d 09 7d 20 65 6c 73 | 65 20 7b 0d 09 09 73 65 |]..} els|e {...se|
|000002d0| 74 20 77 6f 72 64 73 20 | 5b 6c 6c 65 6e 67 74 68 |t words |[llength|
|000002e0| 20 24 74 65 78 74 5d 0d | 09 7d 0d 09 61 6c 65 72 | $text].|.}..aler|
|000002f0| 74 6e 6f 74 65 20 5b 66 | 6f 72 6d 61 74 20 22 25 |tnote [f|ormat "%|
|00000300| 64 20 63 68 61 72 73 2c | 20 25 64 20 77 6f 72 64 |d chars,| %d word|
|00000310| 73 2c 20 25 64 20 6c 69 | 6e 65 73 22 20 24 63 68 |s, %d li|nes" $ch|
|00000320| 61 72 73 20 24 77 6f 72 | 64 73 20 24 6c 69 6e 65 |ars $wor|ds $line|
|00000330| 73 5d 0d 7d 0d 0d 70 72 | 6f 63 20 6d 61 74 63 68 |s].}..pr|oc match|
|00000340| 69 6e 67 4c 69 6e 65 73 | 20 7b 7d 20 7b 0d 09 69 |ingLines| {} {..i|
|00000350| 66 20 5b 63 61 74 63 68 | 20 7b 70 72 6f 6d 70 74 |f [catch| {prompt|
|00000360| 20 22 52 65 67 75 6c 61 | 72 20 65 78 70 72 65 73 | "Regula|r expres|
|00000370| 73 69 6f 6e 3a 22 20 22 | 22 7d 20 72 65 67 5d 20 |sion:" "|"} reg] |
|00000380| 72 65 74 75 72 6e 0d 09 | 69 66 20 7b 21 5b 73 74 |return..|if {![st|
|00000390| 72 69 6e 67 20 6c 65 6e | 67 74 68 20 24 72 65 67 |ring len|gth $reg|
|000003a0| 5d 7d 20 72 65 74 75 72 | 6e 0d 09 73 65 74 20 72 |]} retur|n..set r|
|000003b0| 65 67 20 5e 2e 2a 24 72 | 65 67 2e 2a 24 0d 09 73 |eg ^.*$r|eg.*$..s|
|000003c0| 65 74 20 70 6f 73 20 5b | 67 65 74 50 6f 73 5d 0d |et pos [|getPos].|
|000003d0| 09 73 65 74 20 6d 61 74 | 63 68 65 73 20 30 0d 09 |.set mat|ches 0..|
|000003e0| 77 68 69 6c 65 20 7b 21 | 5b 63 61 74 63 68 20 7b |while {!|[catch {|
|000003f0| 73 65 61 72 63 68 20 2d | 66 20 31 20 2d 72 20 31 |search -|f 1 -r 1|
|00000400| 20 2d 6d 20 30 20 2d 69 | 20 31 20 24 72 65 67 20 | -m 0 -i| 1 $reg |
|00000410| 24 70 6f 73 7d 20 6d 74 | 63 68 5d 7d 20 7b 0d 09 |$pos} mt|ch]} {..|
|00000420| 09 61 70 70 65 6e 64 20 | 6c 69 6e 65 73 20 22 5c |.append |lines "\|
|00000430| 72 22 20 5b 66 6f 72 6d | 61 74 20 22 25 34 64 3a |r" [form|at "%4d:|
|00000440| 20 22 20 5b 6c 69 6e 64 | 65 78 20 5b 70 6f 73 54 | " [lind|ex [posT|
|00000450| 6f 52 6f 77 43 6f 6c 20 | 5b 6c 69 6e 64 65 78 20 |oRowCol |[lindex |
|00000460| 24 6d 74 63 68 20 30 5d | 5d 20 30 5d 5d 20 5b 65 |$mtch 0]|] 0]] [e|
|00000470| 76 61 6c 20 67 65 74 54 | 65 78 74 20 24 6d 74 63 |val getT|ext $mtc|
|00000480| 68 5d 0d 09 09 73 65 74 | 20 70 6f 73 20 5b 6c 69 |h]...set| pos [li|
|00000490| 6e 64 65 78 20 24 6d 74 | 63 68 20 31 5d 0d 09 09 |ndex $mt|ch 1]...|
|000004a0| 69 6e 63 72 20 6d 61 74 | 63 68 65 73 0d 09 7d 0d |incr mat|ches..}.|
|000004b0| 09 6e 65 77 0d 09 69 6e | 73 65 72 74 54 65 78 74 |.new..in|sertText|
|000004c0| 20 5b 66 6f 72 6d 61 74 | 20 22 25 64 20 6d 61 74 | [format| "%d mat|
|000004d0| 63 68 69 6e 67 20 6c 69 | 6e 65 73 5c 72 2d 2d 2d |ching li|nes\r---|
|000004e0| 2d 2d 22 20 24 6d 61 74 | 63 68 65 73 5d 20 24 6c |--" $mat|ches] $l|
|000004f0| 69 6e 65 73 20 22 5c 72 | 22 0d 7d 0d 0d 0d 23 3d |ines "\r|".}...#=|
|00000500| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000510| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000520| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000530| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000540| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 23 20 52 |========|====.# R|
|00000550| 61 6e 64 6f 6d 20 66 75 | 6e 63 74 69 6f 6e 73 2e |andom fu|nctions.|
|00000560| 0d 23 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.#======|========|
|00000570| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000580| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000590| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000005a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 0d |========|=======.|
|000005b0| 0d 23 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.#******|********|
|000005c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000005d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000005e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000005f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 0d 23 20 20 20 20 20 |********|*.# |
|00000600| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000610| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000620| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000630| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000640| 20 2a 0d 23 20 20 20 43 | 6f 6d 6d 65 6e 74 20 62 | *.# C|omment b|
|00000650| 6f 78 20 61 6e 64 20 75 | 6e 63 6f 6d 6d 65 6e 74 |ox and u|ncomment|
|00000660| 20 62 6f 78 20 63 6f 75 | 72 74 65 73 79 20 6f 66 | box cou|rtesy of|
|00000670| 20 49 67 6f 72 20 4d 69 | 6b 6f 6c 69 63 2d 54 6f | Igor Mi|kolic-To|
|00000680| 72 72 65 69 72 61 2e 20 | 20 20 2a 0d 23 20 20 20 |rreira. | *.# |
|00000690| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000006a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000006b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000006c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000006d0| 20 20 20 2a 0d 23 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | *.#**|********|
|000006e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000006f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000700| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000710| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2f 0d 0d 70 |********|****/..p|
|00000720| 72 6f 63 20 63 6f 6d 6d | 65 6e 74 42 6f 78 20 7b |roc comm|entBox {|
|00000730| 7d 20 7b 0d 0d 23 20 50 | 72 65 6c 69 6d 69 6e 61 |} {..# P|relimina|
|00000740| 72 69 65 73 0d 0d 09 69 | 66 20 7b 5b 67 65 74 50 |ries...i|f {[getP|
|00000750| 6f 73 5d 20 3d 3d 20 5b | 73 65 6c 45 6e 64 5d 7d |os] == [|selEnd]}|
|00000760| 20 7b 0d 09 09 61 6c 65 | 72 74 6e 6f 74 65 20 22 | {...ale|rtnote "|
|00000770| 4d 75 73 74 20 73 65 6c | 65 63 74 20 72 65 67 69 |Must sel|ect regi|
|00000780| 6f 6e 20 74 6f 20 62 65 | 20 63 6f 6d 6d 65 6e 74 |on to be| comment|
|00000790| 65 64 2e 22 0d 09 09 72 | 65 74 75 72 6e 0d 09 7d |ed."...r|eturn..}|
|000007a0| 0d 09 67 6c 6f 62 61 6c | 20 6c 61 73 74 4d 6f 64 |..global| lastMod|
|000007b0| 65 0d 09 77 61 74 63 68 | 43 75 72 73 6f 72 0d 09 |e..watch|Cursor..|
|000007c0| 0d 23 20 53 65 74 20 77 | 68 61 74 20 74 68 65 20 |.# Set w|hat the |
|000007d0| 63 6f 6d 6d 65 6e 74 20 | 62 6c 6f 63 6b 20 77 69 |comment |block wi|
|000007e0| 6c 6c 20 6c 6f 6f 6b 20 | 6c 69 6b 65 0d 0d 09 63 |ll look |like...c|
|000007f0| 61 73 65 20 24 6c 61 73 | 74 4d 6f 64 65 20 69 6e |ase $las|tMode in|
|00000800| 20 7b 0d 09 09 22 54 65 | 78 74 22 20 7b 0d 09 09 | {..."Te|xt" {...|
|00000810| 09 73 65 74 20 62 65 67 | 43 6f 6d 6d 65 6e 74 20 |.set beg|Comment |
|00000820| 22 21 22 0d 09 09 09 73 | 65 74 20 62 65 67 43 6f |"!"....s|et begCo|
|00000830| 6d 4c 65 6e 20 31 0d 09 | 09 09 73 65 74 20 65 6e |mLen 1..|..set en|
|00000840| 64 43 6f 6d 6d 65 6e 74 | 20 22 21 22 0d 09 09 09 |dComment| "!"....|
|00000850| 73 65 74 20 65 6e 64 43 | 6f 6d 4c 65 6e 20 31 0d |set endC|omLen 1.|
|00000860| 09 09 09 73 65 74 20 66 | 69 6c 6c 43 68 61 72 20 |...set f|illChar |
|00000870| 22 21 22 0d 09 09 09 73 | 65 74 20 73 70 61 63 65 |"!"....s|et space|
|00000880| 4f 66 66 73 65 74 20 33 | 0d 09 09 7d 0d 09 09 22 |Offset 3|...}..."|
|00000890| 46 6f 72 74 22 20 7b 0d | 09 09 09 73 65 74 20 62 |Fort" {.|...set b|
|000008a0| 65 67 43 6f 6d 6d 65 6e | 74 20 22 43 22 0d 09 09 |egCommen|t "C"...|
|000008b0| 09 73 65 74 20 62 65 67 | 43 6f 6d 4c 65 6e 20 31 |.set beg|ComLen 1|
|000008c0| 0d 09 09 09 73 65 74 20 | 65 6e 64 43 6f 6d 6d 65 |....set |endComme|
|000008d0| 6e 74 20 22 43 22 0d 09 | 09 09 73 65 74 20 65 6e |nt "C"..|..set en|
|000008e0| 64 43 6f 6d 4c 65 6e 20 | 31 0d 09 09 09 73 65 74 |dComLen |1....set|
|000008f0| 20 66 69 6c 6c 43 68 61 | 72 20 22 43 22 0d 09 09 | fillCha|r "C"...|
|00000900| 09 73 65 74 20 73 70 61 | 63 65 4f 66 66 73 65 74 |.set spa|ceOffset|
|00000910| 20 33 0d 09 09 7d 0d 09 | 09 22 54 63 6c 22 20 7b | 3...}..|."Tcl" {|
|00000920| 0d 09 09 09 73 65 74 20 | 62 65 67 43 6f 6d 6d 65 |....set |begComme|
|00000930| 6e 74 20 22 23 22 0d 09 | 09 09 73 65 74 20 62 65 |nt "#"..|..set be|
|00000940| 67 43 6f 6d 4c 65 6e 20 | 31 0d 09 09 09 73 65 74 |gComLen |1....set|
|00000950| 20 65 6e 64 43 6f 6d 6d | 65 6e 74 20 22 23 22 0d | endComm|ent "#".|
|00000960| 09 09 09 73 65 74 20 65 | 6e 64 43 6f 6d 4c 65 6e |...set e|ndComLen|
|00000970| 20 31 0d 09 09 09 73 65 | 74 20 66 69 6c 6c 43 68 | 1....se|t fillCh|
|00000980| 61 72 20 22 23 22 0d 09 | 09 09 73 65 74 20 73 70 |ar "#"..|..set sp|
|00000990| 61 63 65 4f 66 66 73 65 | 74 20 33 0d 09 09 7d 0d |aceOffse|t 3...}.|
|000009a0| 09 09 22 43 22 20 7b 0d | 09 09 09 73 65 74 20 62 |.."C" {.|...set b|
|000009b0| 65 67 43 6f 6d 6d 65 6e | 74 20 22 2f 2a 22 0d 09 |egCommen|t "/*"..|
|000009c0| 09 09 73 65 74 20 62 65 | 67 43 6f 6d 4c 65 6e 20 |..set be|gComLen |
|000009d0| 32 0d 09 09 09 73 65 74 | 20 65 6e 64 43 6f 6d 6d |2....set| endComm|
|000009e0| 65 6e 74 20 22 2a 2f 22 | 0d 09 09 09 73 65 74 20 |ent "*/"|....set |
|000009f0| 65 6e 64 43 6f 6d 4c 65 | 6e 20 32 0d 09 09 09 73 |endComLe|n 2....s|
|00000a00| 65 74 20 66 69 6c 6c 43 | 68 61 72 20 22 2a 22 0d |et fillC|har "*".|
|00000a10| 09 09 09 73 65 74 20 73 | 70 61 63 65 4f 66 66 73 |...set s|paceOffs|
|00000a20| 65 74 20 33 0d 09 09 7d | 0d 09 09 22 43 2b 2b 22 |et 3...}|..."C++"|
|00000a30| 20 7b 0d 09 09 09 73 65 | 74 20 62 65 67 43 6f 6d | {....se|t begCom|
|00000a40| 6d 65 6e 74 20 22 2f 2a | 22 0d 09 09 09 73 65 74 |ment "/*|"....set|
|00000a50| 20 62 65 67 43 6f 6d 4c | 65 6e 20 32 0d 09 09 09 | begComL|en 2....|
|00000a60| 73 65 74 20 65 6e 64 43 | 6f 6d 6d 65 6e 74 20 22 |set endC|omment "|
|00000a70| 2a 2f 22 0d 09 09 09 73 | 65 74 20 65 6e 64 43 6f |*/"....s|et endCo|
|00000a80| 6d 4c 65 6e 20 32 0d 09 | 09 09 73 65 74 20 66 69 |mLen 2..|..set fi|
|00000a90| 6c 6c 43 68 61 72 20 22 | 2a 22 0d 09 09 09 73 65 |llChar "|*"....se|
|00000aa0| 74 20 73 70 61 63 65 4f | 66 66 73 65 74 20 33 0d |t spaceO|ffset 3.|
|00000ab0| 09 09 7d 0d 09 09 64 65 | 66 61 75 6c 74 20 7b 0d |..}...de|fault {.|
|00000ac0| 09 09 09 61 6c 65 72 74 | 6e 6f 74 65 20 22 49 20 |...alert|note "I |
|00000ad0| 64 6f 6e 27 74 20 6b 6e | 6f 77 20 77 68 61 74 20 |don't kn|ow what |
|00000ae0| 63 6f 6d 6d 65 6e 74 73 | 20 73 68 6f 75 6c 64 20 |comments| should |
|00000af0| 6c 6f 6f 6b 20 6c 69 6b | 65 20 69 6e 20 74 68 69 |look lik|e in thi|
|00000b00| 73 20 6d 6f 64 65 2e 20 | 20 53 6f 72 72 79 2e 22 |s mode. | Sorry."|
|00000b10| 0d 09 09 09 72 65 74 75 | 72 6e 0d 09 09 7d 0d 09 |....retu|rn...}..|
|00000b20| 7d 0d 09 73 65 74 20 61 | 53 70 61 63 65 20 22 20 |}..set a|Space " |
|00000b30| 22 0d 0d 23 20 46 69 72 | 73 74 20 6d 61 6b 65 20 |"..# Fir|st make |
|00000b40| 73 75 72 65 20 77 65 20 | 67 72 61 62 20 61 20 66 |sure we |grab a f|
|00000b50| 75 6c 6c 20 62 6c 6f 63 | 6b 20 6f 66 20 6c 69 6e |ull bloc|k of lin|
|00000b60| 65 73 20 61 6e 64 20 61 | 64 6a 75 73 74 20 68 69 |es and a|djust hi|
|00000b70| 67 68 6c 69 67 68 74 0d | 0d 09 73 65 74 20 73 74 |ghlight.|..set st|
|00000b80| 61 72 74 20 5b 67 65 74 | 50 6f 73 5d 0d 09 73 65 |art [get|Pos]..se|
|00000b90| 74 20 73 74 61 72 74 20 | 5b 6c 69 6e 65 53 74 61 |t start |[lineSta|
|00000ba0| 72 74 20 24 73 74 61 72 | 74 5d 0d 09 73 65 74 20 |rt $star|t]..set |
|00000bb0| 65 6e 64 20 5b 73 65 6c | 45 6e 64 5d 0d 09 73 65 |end [sel|End]..se|
|00000bc0| 74 20 65 6e 64 20 5b 6e | 65 78 74 4c 69 6e 65 53 |t end [n|extLineS|
|00000bd0| 74 61 72 74 20 5b 65 78 | 70 72 20 24 65 6e 64 2d |tart [ex|pr $end-|
|00000be0| 31 5d 5d 0d 09 73 65 6c | 65 63 74 20 24 73 74 61 |1]]..sel|ect $sta|
|00000bf0| 72 74 20 24 65 6e 64 0d | 0d 23 20 4e 6f 77 20 67 |rt $end.|.# Now g|
|00000c00| 65 74 20 72 69 64 20 6f | 66 20 61 6e 79 20 74 61 |et rid o|f any ta|
|00000c10| 62 73 0d 09 0d 09 69 66 | 20 7b 20 24 65 6e 64 20 |bs....if| { $end |
|00000c20| 3c 20 5b 6d 61 78 50 6f | 73 5d 20 7d 20 74 68 65 |< [maxPo|s] } the|
|00000c30| 6e 20 7b 0d 09 09 63 72 | 65 61 74 65 54 4d 61 72 |n {...cr|eateTMar|
|00000c40| 6b 20 73 74 6f 70 43 6f | 6d 6d 65 6e 74 20 5b 65 |k stopCo|mment [e|
|00000c50| 78 70 72 20 24 65 6e 64 | 2b 31 5d 0d 09 09 74 61 |xpr $end|+1]...ta|
|00000c60| 62 73 54 6f 53 70 61 63 | 65 73 0d 09 09 67 6f 74 |bsToSpac|es...got|
|00000c70| 6f 54 4d 61 72 6b 20 73 | 74 6f 70 43 6f 6d 6d 65 |oTMark s|topComme|
|00000c80| 6e 74 0d 09 09 73 65 74 | 20 65 6e 64 20 5b 65 78 |nt...set| end [ex|
|00000c90| 70 72 20 5b 67 65 74 50 | 6f 73 5d 2d 31 5d 0d 09 |pr [getP|os]-1]..|
|00000ca0| 09 72 65 6d 6f 76 65 54 | 4d 61 72 6b 20 73 74 6f |.removeT|Mark sto|
|00000cb0| 70 43 6f 6d 6d 65 6e 74 | 0d 09 7d 20 65 6c 73 65 |pComment|..} else|
|00000cc0| 20 7b 0d 09 09 74 61 62 | 73 54 6f 53 70 61 63 65 | {...tab|sToSpace|
|00000cd0| 73 0d 09 09 73 65 74 20 | 65 6e 64 20 5b 6d 61 78 |s...set |end [max|
|00000ce0| 50 6f 73 5d 0d 09 7d 0d | 09 73 65 6c 65 63 74 20 |Pos]..}.|.select |
|00000cf0| 24 73 74 61 72 74 20 24 | 65 6e 64 0d 09 73 65 74 |$start $|end..set|
|00000d00| 20 74 65 78 74 20 5b 67 | 65 74 54 65 78 74 20 24 | text [g|etText $|
|00000d10| 73 74 61 72 74 20 24 65 | 6e 64 5d 0d 09 0d 23 20 |start $e|nd]...# |
|00000d20| 4e 65 78 74 20 74 75 72 | 6e 20 69 74 20 69 6e 74 |Next tur|n it int|
|00000d30| 6f 20 61 20 6c 69 73 74 | 20 6f 66 20 6c 69 6e 65 |o a list| of line|
|00000d40| 73 2d 2d 70 6f 73 73 69 | 62 6c 79 20 64 72 6f 70 |s--possi|bly drop|
|00000d50| 20 61 6e 20 65 6d 70 74 | 79 20 27 6c 61 73 74 20 | an empt|y 'last |
|00000d60| 6c 69 6e 65 27 0d 0d 09 | 73 65 74 20 6c 69 6e 65 |line'...|set line|
|00000d70| 4c 69 73 74 20 5b 73 70 | 6c 69 74 20 24 74 65 78 |List [sp|lit $tex|
|00000d80| 74 20 22 5c 72 22 5d 0d | 09 73 65 74 20 65 6d 70 |t "\r"].|.set emp|
|00000d90| 74 79 4c 69 6e 65 20 5b | 6c 73 65 61 72 63 68 20 |tyLine [|lsearch |
|00000da0| 24 6c 69 6e 65 4c 69 73 | 74 20 7b 7d 5d 0d 09 69 |$lineLis|t {}]..i|
|00000db0| 66 20 7b 20 24 65 6d 70 | 74 79 4c 69 6e 65 20 21 |f { $emp|tyLine !|
|00000dc0| 3d 20 2d 31 20 7d 20 74 | 68 65 6e 20 7b 0d 09 09 |= -1 } t|hen {...|
|00000dd0| 73 65 74 20 6e 75 6d 4c | 69 6e 65 73 20 5b 6c 6c |set numL|ines [ll|
|00000de0| 65 6e 67 74 68 20 24 6c | 69 6e 65 4c 69 73 74 5d |ength $l|ineList]|
|00000df0| 0d 09 09 73 65 74 20 6c | 69 6e 65 4c 69 73 74 20 |...set l|ineList |
|00000e00| 5b 6c 72 61 6e 67 65 20 | 24 6c 69 6e 65 4c 69 73 |[lrange |$lineLis|
|00000e10| 74 20 30 20 5b 65 78 70 | 72 20 24 6e 75 6d 4c 69 |t 0 [exp|r $numLi|
|00000e20| 6e 65 73 2d 32 5d 5d 0d | 09 7d 0d 09 73 65 74 20 |nes-2]].|.}..set |
|00000e30| 6e 75 6d 4c 69 6e 65 73 | 20 5b 6c 6c 65 6e 67 74 |numLines| [llengt|
|00000e40| 68 20 24 6c 69 6e 65 4c | 69 73 74 5d 0d 09 0d 23 |h $lineL|ist]...#|
|00000e50| 20 46 69 6e 64 20 74 68 | 65 20 6c 6f 6e 67 65 73 | Find th|e longes|
|00000e60| 74 20 6c 69 6e 65 20 6c | 65 6e 67 74 68 20 61 6e |t line l|ength an|
|00000e70| 64 20 64 65 74 65 72 6d | 69 6e 65 20 74 68 65 20 |d determ|ine the |
|00000e80| 6e 65 77 20 6c 69 6e 65 | 20 6c 65 6e 67 74 68 0d |new line| length.|
|00000e90| 0d 09 73 65 74 20 6d 61 | 78 4c 65 6e 67 74 68 20 |..set ma|xLength |
|00000ea0| 30 0d 09 66 6f 72 65 61 | 63 68 20 74 68 69 73 4c |0..forea|ch thisL|
|00000eb0| 69 6e 65 20 24 6c 69 6e | 65 4c 69 73 74 20 7b 0d |ine $lin|eList {.|
|00000ec0| 09 09 73 65 74 20 74 68 | 69 73 4c 65 6e 67 74 68 |..set th|isLength|
|00000ed0| 20 5b 73 74 72 69 6e 67 | 20 6c 65 6e 67 74 68 20 | [string| length |
|00000ee0| 24 74 68 69 73 4c 69 6e | 65 5d 0d 09 09 69 66 20 |$thisLin|e]...if |
|00000ef0| 7b 20 24 74 68 69 73 4c | 65 6e 67 74 68 20 3e 20 |{ $thisL|ength > |
|00000f00| 24 6d 61 78 4c 65 6e 67 | 74 68 20 7d 20 74 68 65 |$maxLeng|th } the|
|00000f10| 6e 20 7b 20 0d 09 09 09 | 73 65 74 20 6d 61 78 4c |n { ....|set maxL|
|00000f20| 65 6e 67 74 68 20 24 74 | 68 69 73 4c 65 6e 67 74 |ength $t|hisLengt|
|00000f30| 68 20 0d 09 09 7d 0d 09 | 7d 0d 09 73 65 74 20 6e |h ...}..|}..set n|
|00000f40| 65 77 4c 65 6e 67 74 68 | 20 5b 65 78 70 72 20 7b |ewLength| [expr {|
|00000f50| 24 6d 61 78 4c 65 6e 67 | 74 68 20 2b 20 32 20 2b |$maxLeng|th + 2 +|
|00000f60| 20 32 2a 24 73 70 61 63 | 65 4f 66 66 73 65 74 7d | 2*$spac|eOffset}|
|00000f70| 5d 0d 09 0d 23 20 4e 6f | 77 20 63 72 65 61 74 65 |]...# No|w create|
|00000f80| 20 74 68 65 20 74 6f 70 | 20 26 20 62 6f 74 74 6f | the top| & botto|
|00000f90| 6d 20 62 61 72 73 20 61 | 6e 64 20 61 20 62 6c 61 |m bars a|nd a bla|
|00000fa0| 6e 6b 20 6c 69 6e 65 0d | 0d 09 73 65 74 20 74 6f |nk line.|..set to|
|00000fb0| 70 42 61 72 20 24 62 65 | 67 43 6f 6d 6d 65 6e 74 |pBar $be|gComment|
|00000fc0| 0d 09 66 6f 72 20 7b 20 | 73 65 74 20 69 20 30 20 |..for { |set i 0 |
|00000fd0| 7d 20 7b 20 24 69 20 3c | 20 5b 65 78 70 72 20 7b |} { $i <| [expr {|
|00000fe0| 24 6e 65 77 4c 65 6e 67 | 74 68 20 2d 20 24 62 65 |$newLeng|th - $be|
|00000ff0| 67 43 6f 6d 4c 65 6e 7d | 5d 20 7d 20 7b 20 69 6e |gComLen}|] } { in|
|00001000| 63 72 20 69 20 7d 20 7b | 0d 09 09 73 65 74 20 74 |cr i } {|...set t|
|00001010| 6f 70 42 61 72 20 24 74 | 6f 70 42 61 72 24 66 69 |opBar $t|opBar$fi|
|00001020| 6c 6c 43 68 61 72 0d 09 | 7d 0d 09 73 65 74 20 62 |llChar..|}..set b|
|00001030| 6f 74 42 61 72 20 22 22 | 0d 09 66 6f 72 20 7b 20 |otBar ""|..for { |
|00001040| 73 65 74 20 69 20 30 20 | 7d 20 7b 20 24 69 20 3c |set i 0 |} { $i <|
|00001050| 20 5b 65 78 70 72 20 7b | 24 6e 65 77 4c 65 6e 67 | [expr {|$newLeng|
|00001060| 74 68 20 2d 20 24 65 6e | 64 43 6f 6d 4c 65 6e 7d |th - $en|dComLen}|
|00001070| 5d 20 7d 20 7b 20 69 6e | 63 72 20 69 20 7d 20 7b |] } { in|cr i } {|
|00001080| 0d 09 09 73 65 74 20 62 | 6f 74 42 61 72 20 24 62 |...set b|otBar $b|
|00001090| 6f 74 42 61 72 24 66 69 | 6c 6c 43 68 61 72 0d 09 |otBar$fi|llChar..|
|000010a0| 7d 0d 09 73 65 74 20 62 | 6f 74 42 61 72 20 24 62 |}..set b|otBar $b|
|000010b0| 6f 74 42 61 72 24 65 6e | 64 43 6f 6d 6d 65 6e 74 |otBar$en|dComment|
|000010c0| 0d 09 73 65 74 20 62 6c | 61 6e 6b 4c 69 6e 65 20 |..set bl|ankLine |
|000010d0| 24 66 69 6c 6c 43 68 61 | 72 0d 09 66 6f 72 20 7b |$fillCha|r..for {|
|000010e0| 20 73 65 74 20 69 20 30 | 20 7d 20 7b 20 24 69 20 | set i 0| } { $i |
|000010f0| 3c 20 5b 65 78 70 72 20 | 7b 24 6e 65 77 4c 65 6e |< [expr |{$newLen|
|00001100| 67 74 68 20 2d 20 32 7d | 5d 20 7d 20 7b 20 69 6e |gth - 2}|] } { in|
|00001110| 63 72 20 69 20 7d 20 7b | 0d 09 09 73 65 74 20 62 |cr i } {|...set b|
|00001120| 6c 61 6e 6b 4c 69 6e 65 | 20 24 62 6c 61 6e 6b 4c |lankLine| $blankL|
|00001130| 69 6e 65 24 61 53 70 61 | 63 65 0d 09 7d 0d 09 73 |ine$aSpa|ce..}..s|
|00001140| 65 74 20 62 6c 61 6e 6b | 4c 69 6e 65 20 24 62 6c |et blank|Line $bl|
|00001150| 61 6e 6b 4c 69 6e 65 24 | 66 69 6c 6c 43 68 61 72 |ankLine$|fillChar|
|00001160| 0d 09 0d 23 20 46 6f 72 | 20 65 61 63 68 20 6c 69 |...# For| each li|
|00001170| 6e 65 20 61 64 64 20 73 | 74 75 66 66 20 6f 6e 20 |ne add s|tuff on |
|00001180| 6c 65 66 74 20 61 6e 64 | 20 73 70 61 63 65 73 20 |left and| spaces |
|00001190| 61 6e 64 20 73 74 75 66 | 66 20 6f 6e 20 72 69 67 |and stuf|f on rig|
|000011a0| 68 74 20 66 6f 72 20 62 | 6f 78 20 73 69 64 65 73 |ht for b|ox sides|
|000011b0| 0d 23 20 61 6e 64 20 63 | 6f 6e 63 61 74 65 6e 61 |.# and c|oncatena|
|000011c0| 74 65 20 65 76 65 72 79 | 74 68 69 6e 67 20 69 6e |te every|thing in|
|000011d0| 74 6f 20 27 74 65 78 74 | 27 2e 20 20 53 74 61 72 |to 'text|'. Star|
|000011e0| 74 20 77 69 74 68 20 74 | 6f 70 42 61 72 3b 20 65 |t with t|opBar; e|
|000011f0| 6e 64 20 77 69 74 68 20 | 62 6f 74 42 61 72 0d 0d |nd with |botBar..|
|00001200| 09 73 65 74 20 74 65 78 | 74 20 24 74 6f 70 42 61 |.set tex|t $topBa|
|00001210| 72 5c 72 24 62 6c 61 6e | 6b 4c 69 6e 65 5c 72 0d |r\r$blan|kLine\r.|
|00001220| 09 0d 09 73 65 74 20 66 | 72 6f 6e 74 53 74 75 66 |...set f|rontStuf|
|00001230| 66 20 24 66 69 6c 6c 43 | 68 61 72 0d 09 73 65 74 |f $fillC|har..set|
|00001240| 20 62 61 63 6b 53 74 75 | 66 66 20 24 66 69 6c 6c | backStu|ff $fill|
|00001250| 43 68 61 72 0d 09 66 6f | 72 20 7b 20 73 65 74 20 |Char..fo|r { set |
|00001260| 69 20 30 20 7d 20 7b 20 | 24 69 20 3c 20 24 73 70 |i 0 } { |$i < $sp|
|00001270| 61 63 65 4f 66 66 73 65 | 74 20 7d 20 7b 20 69 6e |aceOffse|t } { in|
|00001280| 63 72 20 69 20 7d 20 7b | 0d 09 09 73 65 74 20 66 |cr i } {|...set f|
|00001290| 72 6f 6e 74 53 74 75 66 | 66 20 24 66 72 6f 6e 74 |rontStuf|f $front|
|000012a0| 53 74 75 66 66 24 61 53 | 70 61 63 65 20 20 0d 09 |Stuff$aS|pace ..|
|000012b0| 09 73 65 74 20 62 61 63 | 6b 53 74 75 66 66 20 24 |.set bac|kStuff $|
|000012c0| 61 53 70 61 63 65 24 62 | 61 63 6b 53 74 75 66 66 |aSpace$b|ackStuff|
|000012d0| 0d 09 7d 0d 09 73 65 74 | 20 62 61 63 6b 53 74 75 |..}..set| backStu|
|000012e0| 66 66 4c 65 6e 20 5b 73 | 74 72 69 6e 67 20 6c 65 |ffLen [s|tring le|
|000012f0| 6e 67 74 68 20 24 62 61 | 63 6b 53 74 75 66 66 5d |ngth $ba|ckStuff]|
|00001300| 0d 09 0d 09 66 6f 72 20 | 7b 20 73 65 74 20 69 20 |....for |{ set i |
|00001310| 30 20 7d 20 7b 20 24 69 | 20 3c 20 24 6e 75 6d 4c |0 } { $i| < $numL|
|00001320| 69 6e 65 73 20 7d 20 7b | 20 69 6e 63 72 20 69 20 |ines } {| incr i |
|00001330| 7d 20 7b 0d 09 09 73 65 | 74 20 74 68 69 73 4c 69 |} {...se|t thisLi|
|00001340| 6e 65 20 5b 6c 69 6e 64 | 65 78 20 24 6c 69 6e 65 |ne [lind|ex $line|
|00001350| 4c 69 73 74 20 24 69 20 | 5d 0d 09 09 73 65 74 20 |List $i |]...set |
|00001360| 74 68 69 73 4c 69 6e 65 | 20 24 66 72 6f 6e 74 53 |thisLine| $frontS|
|00001370| 74 75 66 66 24 74 68 69 | 73 4c 69 6e 65 0d 09 09 |tuff$thi|sLine...|
|00001380| 73 65 74 20 74 68 69 73 | 4c 65 6e 67 74 68 20 5b |set this|Length [|
|00001390| 73 74 72 69 6e 67 20 6c | 65 6e 67 74 68 20 24 74 |string l|ength $t|
|000013a0| 68 69 73 4c 69 6e 65 5d | 0d 09 09 73 65 74 20 68 |hisLine]|...set h|
|000013b0| 6f 77 4d 75 63 68 50 61 | 64 20 5b 65 78 70 72 20 |owMuchPa|d [expr |
|000013c0| 7b 24 6e 65 77 4c 65 6e | 67 74 68 20 2d 20 24 74 |{$newLen|gth - $t|
|000013d0| 68 69 73 4c 65 6e 67 74 | 68 20 2d 20 24 62 61 63 |hisLengt|h - $bac|
|000013e0| 6b 53 74 75 66 66 4c 65 | 6e 7d 5d 0d 09 09 66 6f |kStuffLe|n}]...fo|
|000013f0| 72 20 7b 20 73 65 74 20 | 6a 20 30 20 7d 20 7b 20 |r { set |j 0 } { |
|00001400| 24 6a 20 3c 20 24 68 6f | 77 4d 75 63 68 50 61 64 |$j < $ho|wMuchPad|
|00001410| 20 7d 20 7b 20 69 6e 63 | 72 20 6a 20 7d 20 7b 0d | } { inc|r j } {.|
|00001420| 09 09 09 73 65 74 20 74 | 68 69 73 4c 69 6e 65 20 |...set t|hisLine |
|00001430| 24 74 68 69 73 4c 69 6e | 65 24 61 53 70 61 63 65 |$thisLin|e$aSpace|
|00001440| 20 0d 09 09 7d 0d 09 09 | 73 65 74 20 74 68 69 73 | ...}...|set this|
|00001450| 4c 69 6e 65 20 24 74 68 | 69 73 4c 69 6e 65 24 62 |Line $th|isLine$b|
|00001460| 61 63 6b 53 74 75 66 66 | 0d 09 09 73 65 74 20 74 |ackStuff|...set t|
|00001470| 65 78 74 20 24 74 65 78 | 74 24 74 68 69 73 4c 69 |ext $tex|t$thisLi|
|00001480| 6e 65 5c 72 0d 09 7d 0d | 09 0d 09 73 65 74 20 74 |ne\r..}.|...set t|
|00001490| 65 78 74 20 24 74 65 78 | 74 24 62 6c 61 6e 6b 4c |ext $tex|t$blankL|
|000014a0| 69 6e 65 5c 72 24 62 6f | 74 42 61 72 5c 72 0d 09 |ine\r$bo|tBar\r..|
|000014b0| 0d 23 20 4e 6f 77 20 72 | 65 70 6c 61 63 65 20 74 |.# Now r|eplace t|
|000014c0| 68 65 20 6f 6c 64 20 73 | 74 75 66 66 2c 20 74 75 |he old s|tuff, tu|
|000014d0| 72 6e 20 73 70 61 63 65 | 73 20 74 6f 20 74 61 62 |rn space|s to tab|
|000014e0| 73 2c 20 61 6e 64 20 68 | 69 67 68 6c 69 67 68 74 |s, and h|ighlight|
|000014f0| 0d 0d 09 72 65 70 6c 61 | 63 65 54 65 78 74 09 24 |...repla|ceText.$|
|00001500| 73 74 61 72 74 20 24 65 | 6e 64 09 24 74 65 78 74 |start $e|nd.$text|
|00001510| 0d 09 73 65 74 20 65 6e | 64 20 5b 65 78 70 72 20 |..set en|d [expr |
|00001520| 7b 24 73 74 61 72 74 2b | 5b 73 74 72 69 6e 67 20 |{$start+|[string |
|00001530| 6c 65 6e 67 74 68 20 24 | 74 65 78 74 5d 7d 5d 0d |length $|text]}].|
|00001540| 09 63 72 65 61 74 65 54 | 4d 61 72 6b 20 73 74 6f |.createT|Mark sto|
|00001550| 70 43 6f 6d 6d 65 6e 74 | 20 5b 65 78 70 72 20 24 |pComment| [expr $|
|00001560| 65 6e 64 2b 31 5d 0d 09 | 73 65 6c 65 63 74 20 24 |end+1]..|select $|
|00001570| 73 74 61 72 74 20 24 65 | 6e 64 0d 09 73 70 61 63 |start $e|nd..spac|
|00001580| 65 73 54 6f 54 61 62 73 | 0d 09 67 6f 74 6f 54 4d |esToTabs|..gotoTM|
|00001590| 61 72 6b 20 73 74 6f 70 | 43 6f 6d 6d 65 6e 74 0d |ark stop|Comment.|
|000015a0| 09 73 65 74 20 65 6e 64 | 20 5b 65 78 70 72 20 5b |.set end| [expr [|
|000015b0| 67 65 74 50 6f 73 5d 2d | 31 5d 0d 09 72 65 6d 6f |getPos]-|1]..remo|
|000015c0| 76 65 54 4d 61 72 6b 20 | 73 74 6f 70 43 6f 6d 6d |veTMark |stopComm|
|000015d0| 65 6e 74 0d 09 73 65 6c | 65 63 74 20 24 73 74 61 |ent..sel|ect $sta|
|000015e0| 72 74 20 24 65 6e 64 0d | 7d 0d 0d 0d 0d 70 72 6f |rt $end.|}....pro|
|000015f0| 63 20 75 6e 63 6f 6d 6d | 65 6e 74 42 6f 78 20 7b |c uncomm|entBox {|
|00001600| 7d 20 7b 0d 0d 23 20 50 | 72 65 6c 69 6d 69 6e 61 |} {..# P|relimina|
|00001610| 72 69 65 73 0d 0d 09 69 | 66 20 7b 5b 67 65 74 50 |ries...i|f {[getP|
|00001620| 6f 73 5d 20 3d 3d 20 5b | 73 65 6c 45 6e 64 5d 7d |os] == [|selEnd]}|
|00001630| 20 7b 0d 09 09 61 6c 65 | 72 74 6e 6f 74 65 20 22 | {...ale|rtnote "|
|00001640| 4d 75 73 74 20 73 65 6c | 65 63 74 20 72 65 67 69 |Must sel|ect regi|
|00001650| 6f 6e 20 74 6f 20 62 65 | 20 75 6e 63 6f 6d 6d 65 |on to be| uncomme|
|00001660| 6e 74 65 64 2e 22 0d 09 | 09 72 65 74 75 72 6e 0d |nted."..|.return.|
|00001670| 09 7d 0d 09 67 6c 6f 62 | 61 6c 20 6c 61 73 74 4d |.}..glob|al lastM|
|00001680| 6f 64 65 0d 09 77 61 74 | 63 68 43 75 72 73 6f 72 |ode..wat|chCursor|
|00001690| 0d 09 0d 23 20 53 65 74 | 20 77 68 61 74 20 74 68 |...# Set| what th|
|000016a0| 65 20 63 6f 6d 6d 65 6e | 74 20 62 6c 6f 63 6b 20 |e commen|t block |
|000016b0| 77 69 6c 6c 20 6c 6f 6f | 6b 20 6c 69 6b 65 0d 0d |will loo|k like..|
|000016c0| 09 63 61 73 65 20 24 6c | 61 73 74 4d 6f 64 65 20 |.case $l|astMode |
|000016d0| 69 6e 20 7b 0d 09 09 22 | 54 65 78 74 22 20 7b 0d |in {..."|Text" {.|
|000016e0| 09 09 09 73 65 74 20 62 | 65 67 43 6f 6d 6d 65 6e |...set b|egCommen|
|000016f0| 74 20 22 21 22 0d 09 09 | 09 73 65 74 20 62 65 67 |t "!"...|.set beg|
|00001700| 43 6f 6d 4c 65 6e 20 31 | 0d 09 09 09 73 65 74 20 |ComLen 1|....set |
|00001710| 65 6e 64 43 6f 6d 6d 65 | 6e 74 20 22 21 22 0d 09 |endComme|nt "!"..|
|00001720| 09 09 73 65 74 20 65 6e | 64 43 6f 6d 4c 65 6e 20 |..set en|dComLen |
|00001730| 31 0d 09 09 09 73 65 74 | 20 66 69 6c 6c 43 68 61 |1....set| fillCha|
|00001740| 72 20 22 21 22 0d 09 09 | 09 73 65 74 20 73 70 61 |r "!"...|.set spa|
|00001750| 63 65 4f 66 66 73 65 74 | 20 33 0d 09 09 7d 0d 09 |ceOffset| 3...}..|
|00001760| 09 22 46 6f 72 74 22 20 | 7b 0d 09 09 09 73 65 74 |."Fort" |{....set|
|00001770| 20 62 65 67 43 6f 6d 6d | 65 6e 74 20 22 43 22 0d | begComm|ent "C".|
|00001780| 09 09 09 73 65 74 20 62 | 65 67 43 6f 6d 4c 65 6e |...set b|egComLen|
|00001790| 20 31 0d 09 09 09 73 65 | 74 20 65 6e 64 43 6f 6d | 1....se|t endCom|
|000017a0| 6d 65 6e 74 20 22 43 22 | 0d 09 09 09 73 65 74 20 |ment "C"|....set |
|000017b0| 65 6e 64 43 6f 6d 4c 65 | 6e 20 31 0d 09 09 09 73 |endComLe|n 1....s|
|000017c0| 65 74 20 66 69 6c 6c 43 | 68 61 72 20 22 43 22 0d |et fillC|har "C".|
|000017d0| 09 09 09 73 65 74 20 73 | 70 61 63 65 4f 66 66 73 |...set s|paceOffs|
|000017e0| 65 74 20 33 0d 09 09 7d | 0d 09 09 22 54 63 6c 22 |et 3...}|..."Tcl"|
|000017f0| 20 7b 0d 09 09 09 73 65 | 74 20 62 65 67 43 6f 6d | {....se|t begCom|
|00001800| 6d 65 6e 74 20 22 23 22 | 0d 09 09 09 73 65 74 20 |ment "#"|....set |
|00001810| 62 65 67 43 6f 6d 4c 65 | 6e 20 31 0d 09 09 09 73 |begComLe|n 1....s|
|00001820| 65 74 20 65 6e 64 43 6f | 6d 6d 65 6e 74 20 22 23 |et endCo|mment "#|
|00001830| 22 0d 09 09 09 73 65 74 | 20 65 6e 64 43 6f 6d 4c |"....set| endComL|
|00001840| 65 6e 20 31 0d 09 09 09 | 73 65 74 20 66 69 6c 6c |en 1....|set fill|
|00001850| 43 68 61 72 20 22 23 22 | 0d 09 09 09 73 65 74 20 |Char "#"|....set |
|00001860| 73 70 61 63 65 4f 66 66 | 73 65 74 20 33 0d 09 09 |spaceOff|set 3...|
|00001870| 7d 0d 09 09 22 43 22 20 | 7b 0d 09 09 09 73 65 74 |}..."C" |{....set|
|00001880| 20 62 65 67 43 6f 6d 6d | 65 6e 74 20 22 2f 2a 22 | begComm|ent "/*"|
|00001890| 0d 09 09 09 73 65 74 20 | 62 65 67 43 6f 6d 4c 65 |....set |begComLe|
|000018a0| 6e 20 32 0d 09 09 09 73 | 65 74 20 65 6e 64 43 6f |n 2....s|et endCo|
|000018b0| 6d 6d 65 6e 74 20 22 2a | 2f 22 0d 09 09 09 73 65 |mment "*|/"....se|
|000018c0| 74 20 65 6e 64 43 6f 6d | 4c 65 6e 20 32 0d 09 09 |t endCom|Len 2...|
|000018d0| 09 73 65 74 20 66 69 6c | 6c 43 68 61 72 20 22 2a |.set fil|lChar "*|
|000018e0| 22 0d 09 09 09 73 65 74 | 20 73 70 61 63 65 4f 66 |"....set| spaceOf|
|000018f0| 66 73 65 74 20 33 0d 09 | 09 7d 0d 09 09 22 43 2b |fset 3..|.}..."C+|
|00001900| 2b 22 20 7b 0d 09 09 09 | 73 65 74 20 62 65 67 43 |+" {....|set begC|
|00001910| 6f 6d 6d 65 6e 74 20 22 | 2f 2a 22 0d 09 09 09 73 |omment "|/*"....s|
|00001920| 65 74 20 62 65 67 43 6f | 6d 4c 65 6e 20 32 0d 09 |et begCo|mLen 2..|
|00001930| 09 09 73 65 74 20 65 6e | 64 43 6f 6d 6d 65 6e 74 |..set en|dComment|
|00001940| 20 22 2a 2f 22 0d 09 09 | 09 73 65 74 20 65 6e 64 | "*/"...|.set end|
|00001950| 43 6f 6d 4c 65 6e 20 32 | 0d 09 09 09 73 65 74 20 |ComLen 2|....set |
|00001960| 66 69 6c 6c 43 68 61 72 | 20 22 2a 22 0d 09 09 09 |fillChar| "*"....|
|00001970| 73 65 74 20 73 70 61 63 | 65 4f 66 66 73 65 74 20 |set spac|eOffset |
|00001980| 33 0d 09 09 7d 0d 09 09 | 64 65 66 61 75 6c 74 20 |3...}...|default |
|00001990| 7b 0d 09 09 09 61 6c 65 | 72 74 6e 6f 74 65 20 22 |{....ale|rtnote "|
|000019a0| 49 20 64 6f 6e 27 74 20 | 6b 6e 6f 77 20 77 68 61 |I don't |know wha|
|000019b0| 74 20 63 6f 6d 6d 65 6e | 74 73 20 73 68 6f 75 6c |t commen|ts shoul|
|000019c0| 64 20 6c 6f 6f 6b 20 6c | 69 6b 65 20 69 6e 20 74 |d look l|ike in t|
|000019d0| 68 69 73 20 6d 6f 64 65 | 2e 20 20 53 6f 72 72 79 |his mode|. Sorry|
|000019e0| 2e 22 0d 09 09 09 72 65 | 74 75 72 6e 0d 09 09 7d |."....re|turn...}|
|000019f0| 0d 09 7d 0d 09 73 65 74 | 20 61 53 70 61 63 65 20 |..}..set| aSpace |
|00001a00| 22 20 22 0d 09 73 65 74 | 20 61 54 61 62 20 5c 74 |" "..set| aTab \t|
|00001a10| 0d 0d 23 20 46 69 72 73 | 74 20 6d 61 6b 65 20 73 |..# Firs|t make s|
|00001a20| 75 72 65 20 77 65 20 67 | 72 61 62 20 61 20 66 75 |ure we g|rab a fu|
|00001a30| 6c 6c 20 62 6c 6f 63 6b | 20 6f 66 20 6c 69 6e 65 |ll block| of line|
|00001a40| 73 0d 0d 09 73 65 74 20 | 73 74 61 72 74 20 5b 67 |s...set |start [g|
|00001a50| 65 74 50 6f 73 5d 0d 09 | 73 65 74 20 73 74 61 72 |etPos]..|set star|
|00001a60| 74 20 5b 6c 69 6e 65 53 | 74 61 72 74 20 24 73 74 |t [lineS|tart $st|
|00001a70| 61 72 74 5d 0d 09 73 65 | 74 20 65 6e 64 20 5b 73 |art]..se|t end [s|
|00001a80| 65 6c 45 6e 64 5d 0d 09 | 73 65 74 20 65 6e 64 20 |elEnd]..|set end |
|00001a90| 5b 6e 65 78 74 4c 69 6e | 65 53 74 61 72 74 20 5b |[nextLin|eStart [|
|00001aa0| 65 78 70 72 20 24 65 6e | 64 2d 31 5d 5d 0d 09 73 |expr $en|d-1]]..s|
|00001ab0| 65 74 20 74 65 78 74 20 | 5b 67 65 74 54 65 78 74 |et text |[getText|
|00001ac0| 20 24 73 74 61 72 74 20 | 24 65 6e 64 5d 0d 0d 23 | $start |$end]..#|
|00001ad0| 20 4d 61 6b 65 20 73 75 | 72 65 20 77 65 27 72 65 | Make su|re we're|
|00001ae0| 20 61 74 20 74 68 65 20 | 73 74 61 72 74 20 61 6e | at the |start an|
|00001af0| 64 20 65 6e 64 20 6f 66 | 20 74 68 65 20 62 6f 78 |d end of| the box|
|00001b00| 0d 0d 09 73 65 74 20 73 | 74 61 72 74 4f 4b 20 5b |...set s|tartOK [|
|00001b10| 73 74 72 69 6e 67 20 66 | 69 72 73 74 20 24 62 65 |string f|irst $be|
|00001b20| 67 43 6f 6d 6d 65 6e 74 | 20 24 74 65 78 74 5d 0d |gComment| $text].|
|00001b30| 09 73 65 74 20 65 6e 64 | 4f 4b 20 5b 73 74 72 69 |.set end|OK [stri|
|00001b40| 6e 67 20 6c 61 73 74 20 | 24 65 6e 64 43 6f 6d 6d |ng last |$endComm|
|00001b50| 65 6e 74 20 24 74 65 78 | 74 5d 0d 09 73 65 74 20 |ent $tex|t]..set |
|00001b60| 74 65 78 74 4c 65 6e 67 | 74 68 20 5b 73 74 72 69 |textLeng|th [stri|
|00001b70| 6e 67 20 6c 65 6e 67 74 | 68 20 24 74 65 78 74 5d |ng lengt|h $text]|
|00001b80| 0d 09 69 66 20 7b 20 24 | 73 74 61 72 74 4f 4b 20 |..if { $|startOK |
|00001b90| 21 3d 20 30 20 7c 7c 20 | 28 24 65 6e 64 4f 4b 20 |!= 0 || |($endOK |
|00001ba0| 21 3d 20 5b 65 78 70 72 | 20 7b 24 74 65 78 74 4c |!= [expr| {$textL|
|00001bb0| 65 6e 67 74 68 2d 24 65 | 6e 64 43 6f 6d 4c 65 6e |ength-$e|ndComLen|
|00001bc0| 2d 31 7d 5d 20 7c 7c 20 | 24 65 6e 64 4f 4b 20 3d |-1}] || |$endOK =|
|00001bd0| 3d 20 2d 31 29 20 7d 20 | 74 68 65 6e 20 7b 0d 09 |= -1) } |then {..|
|00001be0| 09 61 6c 65 72 74 6e 6f | 74 65 20 22 59 6f 75 20 |.alertno|te "You |
|00001bf0| 6d 75 73 74 20 68 69 67 | 68 6c 69 67 68 74 20 74 |must hig|hlight t|
|00001c00| 68 65 20 65 6e 74 69 72 | 65 20 63 6f 6d 6d 65 6e |he entir|e commen|
|00001c10| 74 20 62 6f 78 2c 20 69 | 6e 63 6c 75 64 69 6e 67 |t box, i|ncluding|
|00001c20| 20 74 68 65 20 62 6f 72 | 64 65 72 73 2e 22 0d 09 | the bor|ders."..|
|00001c30| 09 72 65 74 75 72 6e 0d | 09 7d 0d 09 0d 23 20 4e |.return.|.}...# N|
|00001c40| 6f 77 20 67 65 74 20 72 | 69 64 20 6f 66 20 61 6e |ow get r|id of an|
|00001c50| 79 20 74 61 62 73 0d 09 | 0d 09 69 66 20 7b 20 24 |y tabs..|..if { $|
|00001c60| 65 6e 64 20 3c 20 5b 6d | 61 78 50 6f 73 5d 20 7d |end < [m|axPos] }|
|00001c70| 20 74 68 65 6e 20 7b 0d | 09 09 63 72 65 61 74 65 | then {.|..create|
|00001c80| 54 4d 61 72 6b 20 73 74 | 6f 70 43 6f 6d 6d 65 6e |TMark st|opCommen|
|00001c90| 74 20 5b 65 78 70 72 20 | 24 65 6e 64 2b 31 5d 0d |t [expr |$end+1].|
|00001ca0| 09 09 74 61 62 73 54 6f | 53 70 61 63 65 73 0d 09 |..tabsTo|Spaces..|
|00001cb0| 09 67 6f 74 6f 54 4d 61 | 72 6b 20 73 74 6f 70 43 |.gotoTMa|rk stopC|
|00001cc0| 6f 6d 6d 65 6e 74 0d 09 | 09 73 65 74 20 65 6e 64 |omment..|.set end|
|00001cd0| 20 5b 65 78 70 72 20 5b | 67 65 74 50 6f 73 5d 2d | [expr [|getPos]-|
|00001ce0| 31 5d 0d 09 09 72 65 6d | 6f 76 65 54 4d 61 72 6b |1]...rem|oveTMark|
|00001cf0| 20 73 74 6f 70 43 6f 6d | 6d 65 6e 74 0d 09 7d 20 | stopCom|ment..} |
|00001d00| 65 6c 73 65 20 7b 0d 09 | 09 74 61 62 73 54 6f 53 |else {..|.tabsToS|
|00001d10| 70 61 63 65 73 0d 09 09 | 73 65 74 20 65 6e 64 20 |paces...|set end |
|00001d20| 5b 6d 61 78 50 6f 73 5d | 0d 09 7d 0d 09 73 65 6c |[maxPos]|..}..sel|
|00001d30| 65 63 74 20 24 73 74 61 | 72 74 20 24 65 6e 64 0d |ect $sta|rt $end.|
|00001d40| 09 73 65 74 20 74 65 78 | 74 20 5b 67 65 74 54 65 |.set tex|t [getTe|
|00001d50| 78 74 20 24 73 74 61 72 | 74 20 24 65 6e 64 5d 0d |xt $star|t $end].|
|00001d60| 09 0d 23 20 4e 65 78 74 | 20 74 75 72 6e 20 69 74 |..# Next| turn it|
|00001d70| 20 69 6e 74 6f 20 61 20 | 6c 69 73 74 20 6f 66 20 | into a |list of |
|00001d80| 6c 69 6e 65 73 2d 2d 70 | 6f 73 73 69 62 6c 79 20 |lines--p|ossibly |
|00001d90| 64 72 6f 70 20 61 6e 20 | 65 6d 70 74 79 20 27 6c |drop an |empty 'l|
|00001da0| 61 73 74 20 6c 69 6e 65 | 27 0d 0d 09 73 65 74 20 |ast line|'...set |
|00001db0| 6c 69 6e 65 4c 69 73 74 | 20 5b 73 70 6c 69 74 20 |lineList| [split |
|00001dc0| 24 74 65 78 74 20 22 5c | 72 22 5d 0d 09 73 65 74 |$text "\|r"]..set|
|00001dd0| 20 65 6d 70 74 79 4c 69 | 6e 65 20 5b 6c 73 65 61 | emptyLi|ne [lsea|
|00001de0| 72 63 68 20 24 6c 69 6e | 65 4c 69 73 74 20 7b 7d |rch $lin|eList {}|
|00001df0| 5d 0d 09 69 66 20 7b 20 | 24 65 6d 70 74 79 4c 69 |]..if { |$emptyLi|
|00001e00| 6e 65 20 21 3d 20 2d 31 | 20 7d 20 74 68 65 6e 20 |ne != -1| } then |
|00001e10| 7b 0d 09 09 73 65 74 20 | 6e 75 6d 4c 69 6e 65 73 |{...set |numLines|
|00001e20| 20 5b 6c 6c 65 6e 67 74 | 68 20 24 6c 69 6e 65 4c | [llengt|h $lineL|
|00001e30| 69 73 74 5d 0d 09 09 73 | 65 74 20 6c 69 6e 65 4c |ist]...s|et lineL|
|00001e40| 69 73 74 20 5b 6c 72 61 | 6e 67 65 20 24 6c 69 6e |ist [lra|nge $lin|
|00001e50| 65 4c 69 73 74 20 30 20 | 5b 65 78 70 72 20 24 6e |eList 0 |[expr $n|
|00001e60| 75 6d 4c 69 6e 65 73 2d | 32 5d 5d 0d 09 7d 0d 09 |umLines-|2]]..}..|
|00001e70| 73 65 74 20 6e 75 6d 4c | 69 6e 65 73 20 5b 6c 6c |set numL|ines [ll|
|00001e80| 65 6e 67 74 68 20 24 6c | 69 6e 65 4c 69 73 74 5d |ength $l|ineList]|
|00001e90| 0d 09 0d 23 20 44 65 6c | 65 74 65 20 74 68 65 20 |...# Del|ete the |
|00001ea0| 66 69 72 73 74 20 61 6e | 64 20 6c 61 73 74 20 6c |first an|d last l|
|00001eb0| 69 6e 65 73 2c 20 72 65 | 63 6f 6d 70 75 74 65 20 |ines, re|compute |
|00001ec0| 6e 75 6d 62 65 72 20 6f | 66 20 6c 69 6e 65 73 0d |number o|f lines.|
|00001ed0| 0d 09 73 65 74 20 6c 69 | 6e 65 4c 69 73 74 20 5b |..set li|neList [|
|00001ee0| 6c 72 65 70 6c 61 63 65 | 20 24 6c 69 6e 65 4c 69 |lreplace| $lineLi|
|00001ef0| 73 74 20 5b 65 78 70 72 | 20 24 6e 75 6d 4c 69 6e |st [expr| $numLin|
|00001f00| 65 73 2d 31 5d 20 5b 65 | 78 70 72 20 24 6e 75 6d |es-1] [e|xpr $num|
|00001f10| 4c 69 6e 65 73 2d 31 5d | 20 5d 0d 09 73 65 74 20 |Lines-1]| ]..set |
|00001f20| 6c 69 6e 65 4c 69 73 74 | 20 5b 6c 72 65 70 6c 61 |lineList| [lrepla|
|00001f30| 63 65 20 24 6c 69 6e 65 | 4c 69 73 74 20 30 20 30 |ce $line|List 0 0|
|00001f40| 20 5d 0d 09 73 65 74 20 | 6e 75 6d 4c 69 6e 65 73 | ]..set |numLines|
|00001f50| 20 5b 6c 6c 65 6e 67 74 | 68 20 24 6c 69 6e 65 4c | [llengt|h $lineL|
|00001f60| 69 73 74 5d 0d 09 0d 23 | 20 45 6c 69 6d 69 6e 61 |ist]...#| Elimina|
|00001f70| 74 65 20 32 6e 64 20 61 | 6e 64 20 32 6e 64 2d 74 |te 2nd a|nd 2nd-t|
|00001f80| 6f 2d 6c 61 73 74 20 6c | 69 6e 65 73 20 69 66 20 |o-last l|ines if |
|00001f90| 74 68 65 79 20 61 72 65 | 20 65 6d 70 74 79 0d 0d |they are| empty..|
|00001fa0| 09 73 65 74 20 65 6c 69 | 6d 69 6e 61 74 65 20 24 |.set eli|minate $|
|00001fb0| 66 69 6c 6c 43 68 61 72 | 24 61 53 70 61 63 65 24 |fillChar|$aSpace$|
|00001fc0| 61 54 61 62 0d 09 73 65 | 74 20 74 68 69 73 4c 69 |aTab..se|t thisLi|
|00001fd0| 6e 65 20 5b 6c 69 6e 64 | 65 78 20 24 6c 69 6e 65 |ne [lind|ex $line|
|00001fe0| 4c 69 73 74 20 5b 65 78 | 70 72 20 24 6e 75 6d 4c |List [ex|pr $numL|
|00001ff0| 69 6e 65 73 2d 31 5d 5d | 0d 09 73 65 74 20 74 68 |ines-1]]|..set th|
|00002000| 69 73 4c 69 6e 65 20 5b | 73 74 72 69 6e 67 20 74 |isLine [|string t|
|00002010| 72 69 6d 20 24 74 68 69 | 73 4c 69 6e 65 20 24 65 |rim $thi|sLine $e|
|00002020| 6c 69 6d 69 6e 61 74 65 | 5d 0d 09 69 66 20 7b 20 |liminate|]..if { |
|00002030| 5b 73 74 72 69 6e 67 20 | 6c 65 6e 67 74 68 20 24 |[string |length $|
|00002040| 74 68 69 73 4c 69 6e 65 | 5d 20 3d 3d 20 30 20 7d |thisLine|] == 0 }|
|00002050| 20 74 68 65 6e 20 7b 0d | 09 09 73 65 74 20 6c 69 | then {.|..set li|
|00002060| 6e 65 4c 69 73 74 20 5b | 6c 72 65 70 6c 61 63 65 |neList [|lreplace|
|00002070| 20 24 6c 69 6e 65 4c 69 | 73 74 20 5b 65 78 70 72 | $lineLi|st [expr|
|00002080| 20 24 6e 75 6d 4c 69 6e | 65 73 2d 31 5d 20 5b 65 | $numLin|es-1] [e|
|00002090| 78 70 72 20 24 6e 75 6d | 4c 69 6e 65 73 2d 31 5d |xpr $num|Lines-1]|
|000020a0| 20 5d 0d 09 7d 0d 09 73 | 65 74 20 74 68 69 73 4c | ]..}..s|et thisL|
|000020b0| 69 6e 65 20 5b 6c 69 6e | 64 65 78 20 24 6c 69 6e |ine [lin|dex $lin|
|000020c0| 65 4c 69 73 74 20 30 5d | 0d 09 73 65 74 20 74 68 |eList 0]|..set th|
|000020d0| 69 73 4c 69 6e 65 20 5b | 73 74 72 69 6e 67 20 74 |isLine [|string t|
|000020e0| 72 69 6d 20 24 74 68 69 | 73 4c 69 6e 65 20 24 65 |rim $thi|sLine $e|
|000020f0| 6c 69 6d 69 6e 61 74 65 | 5d 0d 09 69 66 20 7b 20 |liminate|]..if { |
|00002100| 5b 73 74 72 69 6e 67 20 | 6c 65 6e 67 74 68 20 24 |[string |length $|
|00002110| 74 68 69 73 4c 69 6e 65 | 5d 20 3d 3d 20 30 20 7d |thisLine|] == 0 }|
|00002120| 20 74 68 65 6e 20 7b 0d | 09 09 73 65 74 20 6c 69 | then {.|..set li|
|00002130| 6e 65 4c 69 73 74 20 5b | 6c 72 65 70 6c 61 63 65 |neList [|lreplace|
|00002140| 20 24 6c 69 6e 65 4c 69 | 73 74 20 30 20 30 20 5d | $lineLi|st 0 0 ]|
|00002150| 0d 09 7d 0d 09 73 65 74 | 20 6e 75 6d 4c 69 6e 65 |..}..set| numLine|
|00002160| 73 20 5b 6c 6c 65 6e 67 | 74 68 20 24 6c 69 6e 65 |s [lleng|th $line|
|00002170| 4c 69 73 74 5d 09 0d 09 | 0d 23 20 46 6f 72 20 65 |List]...|.# For e|
|00002180| 61 63 68 20 6c 69 6e 65 | 20 74 72 69 6d 20 73 74 |ach line| trim st|
|00002190| 75 66 66 20 6f 6e 20 6c | 65 66 74 20 61 6e 64 20 |uff on l|eft and |
|000021a0| 73 70 61 63 65 73 20 61 | 6e 64 20 73 74 75 66 66 |spaces a|nd stuff|
|000021b0| 20 6f 6e 20 72 69 67 68 | 74 20 61 6e 64 20 73 70 | on righ|t and sp|
|000021c0| 6c 69 63 65 0d 0d 09 73 | 65 74 20 64 72 6f 70 46 |lice...s|et dropF|
|000021d0| 72 6f 6d 4c 65 66 74 20 | 5b 65 78 70 72 20 24 73 |romLeft |[expr $s|
|000021e0| 70 61 63 65 4f 66 66 73 | 65 74 2b 31 5d 0d 09 73 |paceOffs|et+1]..s|
|000021f0| 65 74 20 74 65 78 74 20 | 22 22 0d 09 66 6f 72 20 |et text |""..for |
|00002200| 7b 20 73 65 74 20 69 20 | 30 20 7d 20 7b 20 24 69 |{ set i |0 } { $i|
|00002210| 20 3c 20 24 6e 75 6d 4c | 69 6e 65 73 20 7d 20 7b | < $numL|ines } {|
|00002220| 20 69 6e 63 72 20 69 20 | 7d 20 7b 0d 09 09 73 65 | incr i |} {...se|
|00002230| 74 20 74 68 69 73 4c 69 | 6e 65 20 5b 6c 69 6e 64 |t thisLi|ne [lind|
|00002240| 65 78 20 24 6c 69 6e 65 | 4c 69 73 74 20 24 69 5d |ex $line|List $i]|
|00002250| 0d 09 09 73 65 74 20 74 | 68 69 73 4c 69 6e 65 20 |...set t|hisLine |
|00002260| 5b 73 74 72 69 6e 67 20 | 74 72 69 6d 72 69 67 68 |[string |trimrigh|
|00002270| 74 20 24 74 68 69 73 4c | 69 6e 65 20 24 65 6c 69 |t $thisL|ine $eli|
|00002280| 6d 69 6e 61 74 65 5d 0d | 09 09 73 65 74 20 74 68 |minate].|..set th|
|00002290| 69 73 4c 69 6e 65 20 5b | 73 74 72 69 6e 67 20 72 |isLine [|string r|
|000022a0| 61 6e 67 65 20 24 74 68 | 69 73 4c 69 6e 65 20 24 |ange $th|isLine $|
|000022b0| 64 72 6f 70 46 72 6f 6d | 4c 65 66 74 20 65 6e 64 |dropFrom|Left end|
|000022c0| 5d 0d 09 09 73 65 74 20 | 74 65 78 74 20 24 74 65 |]...set |text $te|
|000022d0| 78 74 24 74 68 69 73 4c | 69 6e 65 5c 72 0d 09 7d |xt$thisL|ine\r..}|
|000022e0| 0d 09 09 0d 23 20 4e 6f | 77 20 72 65 70 6c 61 63 |....# No|w replac|
|000022f0| 65 20 74 68 65 20 6f 6c | 64 20 73 74 75 66 66 2c |e the ol|d stuff,|
|00002300| 20 63 6f 6e 76 65 72 74 | 20 73 70 61 63 65 73 20 | convert| spaces |
|00002310| 62 61 63 6b 20 74 6f 20 | 74 61 62 73 0d 0d 09 72 |back to |tabs...r|
|00002320| 65 70 6c 61 63 65 54 65 | 78 74 09 24 73 74 61 72 |eplaceTe|xt.$star|
|00002330| 74 20 24 65 6e 64 09 24 | 74 65 78 74 0d 09 73 65 |t $end.$|text..se|
|00002340| 74 20 65 6e 64 20 5b 65 | 78 70 72 20 7b 24 73 74 |t end [e|xpr {$st|
|00002350| 61 72 74 2b 5b 73 74 72 | 69 6e 67 09 6c 65 6e 67 |art+[str|ing.leng|
|00002360| 74 68 20 24 74 65 78 74 | 5d 7d 5d 0d 09 63 72 65 |th $text|]}]..cre|
|00002370| 61 74 65 54 4d 61 72 6b | 20 73 74 6f 70 43 6f 6d |ateTMark| stopCom|
|00002380| 6d 65 6e 74 20 5b 65 78 | 70 72 20 24 65 6e 64 2b |ment [ex|pr $end+|
|00002390| 31 5d 0d 09 73 65 6c 65 | 63 74 20 24 73 74 61 72 |1]..sele|ct $star|
|000023a0| 74 20 24 65 6e 64 0d 09 | 73 70 61 63 65 73 54 6f |t $end..|spacesTo|
|000023b0| 54 61 62 73 0d 09 67 6f | 74 6f 54 4d 61 72 6b 20 |Tabs..go|toTMark |
|000023c0| 73 74 6f 70 43 6f 6d 6d | 65 6e 74 0d 09 73 65 74 |stopComm|ent..set|
|000023d0| 20 65 6e 64 20 5b 65 78 | 70 72 20 5b 67 65 74 50 | end [ex|pr [getP|
|000023e0| 6f 73 5d 2d 31 5d 0d 09 | 72 65 6d 6f 76 65 54 4d |os]-1]..|removeTM|
|000023f0| 61 72 6b 20 73 74 6f 70 | 43 6f 6d 6d 65 6e 74 0d |ark stop|Comment.|
|00002400| 09 73 65 6c 65 63 74 20 | 24 73 74 61 72 74 20 24 |.select |$start $|
|00002410| 65 6e 64 0d 7d 0d 0d 0d | 23 3d 3d 3d 3d 3d 3d 3d |end.}...|#=======|
|00002420| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002430| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002440| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002450| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002460| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 0d 70 72 6f 63 20 |========|=..proc |
|00002470| 74 72 61 6e 73 70 6f 73 | 65 57 6f 72 64 73 20 7b |transpos|eWords {|
|00002480| 7d 20 7b 0d 09 67 6c 6f | 62 61 6c 20 69 6e 74 65 |} {..glo|bal inte|
|00002490| 6c 43 75 74 50 61 73 74 | 65 0d 09 0d 09 73 65 74 |lCutPast|e....set|
|000024a0| 20 69 6e 74 65 6c 20 24 | 69 6e 74 65 6c 43 75 74 | intel $|intelCut|
|000024b0| 50 61 73 74 65 0d 09 73 | 65 74 20 69 6e 74 65 6c |Paste..s|et intel|
|000024c0| 43 75 74 50 61 73 74 65 | 20 30 0d 20 20 20 20 66 |CutPaste| 0. f|
|000024d0| 6f 72 77 61 72 64 57 6f | 72 64 0d 20 20 20 20 73 |orwardWo|rd. s|
|000024e0| 65 74 4d 61 72 6b 0d 20 | 20 20 20 62 61 63 6b 77 |etMark. | backw|
|000024f0| 61 72 64 57 6f 72 64 0d | 20 20 20 20 63 75 74 0d |ardWord.| cut.|
|00002500| 20 20 20 20 64 65 6c 65 | 74 65 43 68 61 72 0d 20 | dele|teChar. |
|00002510| 20 20 20 66 6f 72 77 61 | 72 64 57 6f 72 64 0d 20 | forwa|rdWord. |
|00002520| 20 20 20 69 6e 73 65 72 | 74 54 65 78 74 20 22 5c | inser|tText "\|
|00002530| 20 22 0d 20 20 20 20 70 | 61 73 74 65 0d 09 73 65 | ". p|aste..se|
|00002540| 74 20 69 6e 74 65 6c 43 | 75 74 50 61 73 74 65 20 |t intelC|utPaste |
|00002550| 24 69 6e 74 65 6c 0d 7d | 0d 0d 70 72 6f 63 20 74 |$intel.}|..proc t|
|00002560| 72 61 6e 73 70 6f 73 65 | 43 68 61 72 73 20 7b 7d |ranspose|Chars {}|
|00002570| 20 7b 0d 20 09 67 6c 6f | 62 61 6c 20 69 6e 74 65 | {. .glo|bal inte|
|00002580| 6c 43 75 74 50 61 73 74 | 65 0d 09 0d 09 73 65 74 |lCutPast|e....set|
|00002590| 20 69 6e 74 65 6c 20 24 | 69 6e 74 65 6c 43 75 74 | intel $|intelCut|
|000025a0| 50 61 73 74 65 0d 09 73 | 65 74 20 69 6e 74 65 6c |Paste..s|et intel|
|000025b0| 43 75 74 50 61 73 74 65 | 20 30 0d 20 20 20 20 73 |CutPaste| 0. s|
|000025c0| 65 74 4d 61 72 6b 0d 20 | 20 20 20 66 6f 72 77 61 |etMark. | forwa|
|000025d0| 72 64 43 68 61 72 0d 20 | 20 20 20 63 75 74 0d 20 |rdChar. | cut. |
|000025e0| 20 20 20 62 61 63 6b 77 | 61 72 64 43 68 61 72 0d | backw|ardChar.|
|000025f0| 20 20 20 20 70 61 73 74 | 65 0d 20 20 20 20 66 6f | past|e. fo|
|00002600| 72 77 61 72 64 43 68 61 | 72 0d 09 73 65 74 20 69 |rwardCha|r..set i|
|00002610| 6e 74 65 6c 43 75 74 50 | 61 73 74 65 20 24 69 6e |ntelCutP|aste $in|
|00002620| 74 65 6c 0d 7d 0d 0d 70 | 72 6f 63 20 6e 65 78 74 |tel.}..p|roc next|
|00002630| 46 75 6e 63 20 7b 7d 20 | 7b 0d 09 73 65 61 72 63 |Func {} |{..searc|
|00002640| 68 46 75 6e 63 20 31 0d | 7d 0d 0d 70 72 6f 63 20 |hFunc 1.|}..proc |
|00002650| 70 72 65 76 46 75 6e 63 | 20 7b 7d 20 7b 0d 09 73 |prevFunc| {} {..s|
|00002660| 65 61 72 63 68 46 75 6e | 63 20 30 0d 7d 0d 0d 70 |earchFun|c 0.}..p|
|00002670| 72 6f 63 20 73 65 61 72 | 63 68 46 75 6e 63 20 7b |roc sear|chFunc {|
|00002680| 64 69 72 7d 20 7b 0d 09 | 67 6c 6f 62 61 6c 20 66 |dir} {..|global f|
|00002690| 75 6e 63 45 78 70 72 0d | 09 73 65 74 20 70 6f 73 |uncExpr.|.set pos|
|000026a0| 20 5b 67 65 74 50 6f 73 | 5d 0d 09 73 65 6c 65 63 | [getPos|]..selec|
|000026b0| 74 20 24 70 6f 73 0d 09 | 69 66 20 28 24 64 69 72 |t $pos..|if ($dir|
|000026c0| 3d 3d 31 29 20 7b 0d 09 | 09 69 6e 63 72 20 70 6f |==1) {..|.incr po|
|000026d0| 73 0d 09 7d 20 65 6c 73 | 65 20 7b 0d 09 09 73 65 |s..} els|e {...se|
|000026e0| 74 20 70 6f 73 20 5b 65 | 78 70 72 20 24 70 6f 73 |t pos [e|xpr $pos|
|000026f0| 2d 31 5d 0d 09 7d 0d 09 | 69 66 20 7b 21 5b 63 61 |-1]..}..|if {![ca|
|00002700| 74 63 68 20 7b 73 65 61 | 72 63 68 20 2d 66 20 24 |tch {sea|rch -f $|
|00002710| 64 69 72 20 2d 69 20 31 | 20 2d 72 20 31 20 24 66 |dir -i 1| -r 1 $f|
|00002720| 75 6e 63 45 78 70 72 20 | 24 70 6f 73 7d 20 72 65 |uncExpr |$pos} re|
|00002730| 73 5d 7d 20 7b 0d 09 09 | 65 76 61 6c 20 73 65 6c |s]} {...|eval sel|
|00002740| 65 63 74 20 24 72 65 73 | 0d 09 7d 0d 7d 0d 0d 23 |ect $res|..}.}..#|
|00002750| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002760| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002770| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002780| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002790| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 0d 23 20 43 6f |========|===.# Co|
|000027a0| 6d 6d 65 6e 74 20 72 6f | 75 74 69 6e 65 73 2e 0d |mment ro|utines..|
|000027b0| 23 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |#=======|========|
|000027c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000027d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000027e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000027f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 70 72 6f |========|====.pro|
|00002800| 63 20 63 6f 6d 6d 65 6e | 74 50 61 72 61 20 7b 7d |c commen|tPara {}|
|00002810| 20 7b 0d 7d 0d 0d 0d 0d | 23 3d 3d 3d 3d 3d 3d 3d | {.}....|#=======|
|00002820| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002830| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002840| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002850| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002860| 3d 3d 3d 3d 0d 23 20 53 | 6f 72 74 69 6e 67 20 74 |====.# S|orting t|
|00002870| 68 65 20 73 65 6c 65 63 | 74 69 6f 6e 2e 0d 23 20 |he selec|tion..# |
|00002880| 41 55 54 48 4f 52 3a 20 | 44 61 76 69 64 20 43 2e |AUTHOR: |David C.|
|00002890| 20 42 6c 61 63 6b 09 20 | 62 6c 61 63 6b 40 6d 70 | Black. |black@mp|
|000028a0| 64 2e 74 61 6e 64 65 6d | 2e 63 6f 6d 0d 23 3d 3d |d.tandem|.com.#==|
|000028b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000028c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000028d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000028e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000028f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 70 72 6f 63 20 73 |========|=.proc s|
|00002900| 6f 72 74 4c 69 6e 65 73 | 20 7b 7d 20 7b 0d 09 73 |ortLines| {} {..s|
|00002910| 65 74 20 65 6e 64 73 20 | 5b 67 65 74 45 6e 64 70 |et ends |[getEndp|
|00002920| 74 73 5d 0d 09 73 65 74 | 20 73 74 61 72 74 20 5b |ts]..set| start [|
|00002930| 6c 69 6e 64 65 78 20 24 | 65 6e 64 73 20 30 5d 0d |lindex $|ends 0].|
|00002940| 09 73 65 74 20 65 6e 64 | 20 20 5b 6c 69 6e 64 65 |.set end| [linde|
|00002950| 78 20 24 65 6e 64 73 20 | 31 5d 0d 09 69 66 20 7b |x $ends |1]..if {|
|00002960| 24 73 74 61 72 74 20 3d | 3d 20 24 65 6e 64 7d 20 |$start =|= $end} |
|00002970| 7b 0d 09 09 61 6c 65 72 | 74 6e 6f 74 65 20 22 59 |{...aler|tnote "Y|
|00002980| 6f 75 20 6d 75 73 74 20 | 68 69 67 68 6c 69 67 68 |ou must |highligh|
|00002990| 74 20 74 68 65 20 73 65 | 63 74 69 6f 6e 20 79 6f |t the se|ction yo|
|000029a0| 75 20 77 69 73 68 20 74 | 6f 20 73 6f 72 74 2e 22 |u wish t|o sort."|
|000029b0| 0d 09 09 72 65 74 75 72 | 6e 0d 09 7d 0d 09 69 66 |...retur|n..}..if|
|000029c0| 20 7b 5b 6c 6f 6f 6b 41 | 74 20 5b 65 78 70 72 20 | {[lookA|t [expr |
|000029d0| 24 65 6e 64 2d 31 5d 5d | 20 21 3d 20 22 5c 72 22 |$end-1]]| != "\r"|
|000029e0| 7d 20 7b 0d 09 09 61 6c | 65 72 74 6e 6f 74 65 20 |} {...al|ertnote |
|000029f0| 22 54 68 65 20 73 65 6c | 65 63 74 69 6f 6e 20 6d |"The sel|ection m|
|00002a00| 75 73 74 20 63 6f 6e 73 | 69 73 74 20 6f 6e 6c 79 |ust cons|ist only|
|00002a10| 20 6f 66 20 63 6f 6d 70 | 6c 65 74 65 20 6c 69 6e | of comp|lete lin|
|00002a20| 65 73 2e 22 0d 09 09 72 | 65 74 75 72 6e 0d 09 7d |es."...r|eturn..}|
|00002a30| 0d 09 73 65 74 20 74 65 | 78 74 20 5b 67 65 74 54 |..set te|xt [getT|
|00002a40| 65 78 74 20 24 73 74 61 | 72 74 20 5b 65 78 70 72 |ext $sta|rt [expr|
|00002a50| 20 7b 24 65 6e 64 2d 31 | 7d 5d 5d 0d 09 73 65 74 | {$end-1|}]]..set|
|00002a60| 20 74 65 78 74 20 5b 6a | 6f 69 6e 20 5b 6c 73 6f | text [j|oin [lso|
|00002a70| 72 74 20 5b 73 70 6c 69 | 74 20 24 74 65 78 74 20 |rt [spli|t $text |
|00002a80| 22 5c 72 22 5d 5d 20 22 | 5c 72 22 5d 0d 09 72 65 |"\r"]] "|\r"]..re|
|00002a90| 70 6c 61 63 65 54 65 78 | 74 20 24 73 74 61 72 74 |placeTex|t $start|
|00002aa0| 20 5b 65 78 70 72 20 7b | 24 65 6e 64 2d 31 7d 5d | [expr {|$end-1}]|
|00002ab0| 20 24 74 65 78 74 0d 09 | 73 65 6c 65 63 74 20 24 | $text..|select $|
|00002ac0| 73 74 61 72 74 20 24 65 | 6e 64 0d 7d 0d 0d 0d 0d |start $e|nd.}....|
|00002ad0| 70 72 6f 63 20 63 6f 6d | 70 61 72 65 57 69 6e 64 |proc com|pareWind|
|00002ae0| 6f 77 73 20 7b 7d 20 7b | 0d 20 20 20 20 73 65 74 |ows {} {|. set|
|00002af0| 20 6f 6e 65 20 5b 6c 69 | 73 74 70 69 63 6b 20 5b | one [li|stpick [|
|00002b00| 6c 73 6f 72 74 20 5b 77 | 69 6e 4e 61 6d 65 73 20 |lsort [w|inNames |
|00002b10| 2d 66 5d 5d 5d 0d 20 20 | 20 20 73 65 74 20 74 77 |-f]]]. | set tw|
|00002b20| 6f 20 5b 6c 69 73 74 70 | 69 63 6b 20 5b 6c 73 6f |o [listp|ick [lso|
|00002b30| 72 74 20 5b 77 69 6e 4e | 61 6d 65 73 20 2d 66 5d |rt [winN|ames -f]|
|00002b40| 5d 5d 0d 09 63 6f 6d 70 | 61 72 65 2d 77 69 6e 64 |]]..comp|are-wind|
|00002b50| 6f 77 73 20 24 6f 6e 65 | 20 24 74 77 6f 0d 7d 0d |ows $one| $two.}.|
|00002b60| 0d 0d 23 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..#=====|========|
|00002b70| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002b80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002b90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002ba0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 0d 23 |========|======.#|
|00002bb0| 20 44 75 6d 70 20 61 6c | 6c 20 63 75 72 72 65 6e | Dump al|l curren|
|00002bc0| 74 20 73 65 74 74 69 6e | 67 73 20 69 6e 74 6f 20 |t settin|gs into |
|00002bd0| 61 20 66 69 6c 65 2e 0d | 23 3d 3d 3d 3d 3d 3d 3d |a file..|#=======|
|00002be0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002bf0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002c00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002c10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002c20| 3d 3d 3d 3d 0d 70 72 6f | 63 20 69 6e 73 65 72 74 |====.pro|c insert|
|00002c30| 47 6c 6f 62 61 6c 53 65 | 74 74 69 6e 67 73 20 7b |GlobalSe|ttings {|
|00002c40| 7d 20 7b 0d 09 75 70 6c | 65 76 65 6c 20 23 30 20 |} {..upl|evel #0 |
|00002c50| 7b 0d 09 09 66 6f 72 65 | 61 63 68 20 76 61 72 20 |{...fore|ach var |
|00002c60| 5b 69 6e 66 6f 20 67 6c | 6f 62 61 6c 73 5d 20 7b |[info gl|obals] {|
|00002c70| 0d 09 09 09 69 66 20 7b | 21 5b 63 61 74 63 68 20 |....if {|![catch |
|00002c80| 7b 73 65 74 20 24 76 61 | 72 7d 5d 7d 20 7b 0d 09 |{set $va|r}]} {..|
|00002c90| 09 09 09 69 6e 73 65 72 | 74 54 65 78 74 20 22 73 |...inser|tText "s|
|00002ca0| 65 74 20 22 20 24 76 61 | 72 20 22 20 5c 7b 22 20 |et " $va|r " \{" |
|00002cb0| 5b 73 65 74 20 24 76 61 | 72 5d 20 22 5c 7d 5c 72 |[set $va|r] "\}\r|
|00002cc0| 22 0d 09 09 09 7d 0d 09 | 09 7d 0d 09 7d 0d 7d 0d |"....}..|.}..}.}.|
|00002cd0| 0d 0d 23 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..#=====|========|
|00002ce0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002cf0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002d00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002d10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002d20| 3d 3d 3d 0d 23 20 53 75 | 62 73 74 69 74 75 74 65 |===.# Su|bstitute|
|00002d30| 20 67 6c 6f 62 61 6c 20 | 76 61 72 69 61 62 6c 65 | global |variable|
|00002d40| 73 20 69 6e 20 70 6f 73 | 73 69 62 6c 79 20 6e 65 |s in pos|sibly ne|
|00002d50| 73 74 65 64 20 6c 69 73 | 74 2e 0d 23 3d 3d 3d 3d |sted lis|t..#====|
|00002d60| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002d70| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002d80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002d90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002da0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 70 72 6f |========|====.pro|
|00002db0| 63 20 73 75 62 56 61 72 | 73 20 7b 77 6f 72 64 73 |c subVar|s {words|
|00002dc0| 7d 20 7b 0d 09 67 6c 6f | 62 61 6c 20 73 69 6c 6c |} {..glo|bal sill|
|00002dd0| 79 0d 09 67 6c 6f 62 61 | 6c 20 61 0d 09 73 65 74 |y..globa|l a..set|
|00002de0| 20 73 69 6c 6c 79 20 24 | 77 6f 72 64 73 0d 09 73 | silly $|words..s|
|00002df0| 65 74 20 6f 75 74 20 7b | 7d 0d 09 66 6f 72 65 61 |et out {|}..forea|
|00002e00| 63 68 20 61 20 24 77 6f | 72 64 73 20 7b 0d 09 09 |ch a $wo|rds {...|
|00002e10| 69 66 20 7b 5b 6c 6c 65 | 6e 67 74 68 20 24 61 5d |if {[lle|ngth $a]|
|00002e20| 20 3d 3d 20 31 7d 20 7b | 0d 09 09 09 6c 61 70 70 | == 1} {|....lapp|
|00002e30| 65 6e 64 20 6f 75 74 20 | 5b 75 70 6c 65 76 65 6c |end out |[uplevel|
|00002e40| 20 23 30 20 7b 65 76 61 | 6c 20 73 65 74 20 78 20 | #0 {eva|l set x |
|00002e50| 24 61 7d 5d 0d 09 09 7d | 20 65 6c 73 65 20 7b 0d |$a}]...}| else {.|
|00002e60| 09 09 09 6c 61 70 70 65 | 6e 64 20 6f 75 74 20 5b |...lappe|nd out [|
|00002e70| 73 75 62 56 61 72 73 20 | 24 61 5d 0d 09 09 7d 0d |subVars |$a]...}.|
|00002e80| 09 7d 0d 09 72 65 74 75 | 72 6e 20 24 6f 75 74 0d |.}..retu|rn $out.|
|00002e90| 7d 0d 0d 23 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |}..#====|========|
|00002ea0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002eb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002ec0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002ed0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002ee0| 3d 3d 3d 3d 0d 23 20 42 | 6c 6f 63 6b 20 73 68 69 |====.# B|lock shi|
|00002ef0| 66 74 20 6c 65 66 74 20 | 61 6e 64 20 72 69 67 68 |ft left |and righ|
|00002f00| 74 2e 0d 23 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |t..#====|========|
|00002f10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002f20| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002f30| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002f40| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002f50| 3d 3d 3d 3d 0d 73 65 74 | 20 73 68 69 66 74 43 68 |====.set| shiftCh|
|00002f60| 61 72 09 22 5c 74 22 0d | 0d 70 72 6f 63 20 73 68 |ar."\t".|.proc sh|
|00002f70| 69 66 74 4c 65 66 74 20 | 7b 7d 20 7b 0d 09 67 6c |iftLeft |{} {..gl|
|00002f80| 6f 62 61 6c 20 73 68 69 | 66 74 43 68 61 72 0d 09 |obal shi|ftChar..|
|00002f90| 0d 20 09 73 65 74 20 73 | 74 61 72 74 20 5b 6c 69 |. .set s|tart [li|
|00002fa0| 6e 65 53 74 61 72 74 20 | 5b 67 65 74 50 6f 73 5d |neStart |[getPos]|
|00002fb0| 5d 0d 20 09 73 65 74 20 | 65 6e 64 20 5b 6e 65 78 |]. .set |end [nex|
|00002fc0| 74 4c 69 6e 65 53 74 61 | 72 74 20 5b 65 78 70 72 |tLineSta|rt [expr|
|00002fd0| 20 5b 73 65 6c 45 6e 64 | 5d 20 2d 20 31 5d 5d 0d | [selEnd|] - 1]].|
|00002fe0| 09 69 66 20 7b 24 73 74 | 61 72 74 20 3e 3d 20 24 |.if {$st|art >= $|
|00002ff0| 65 6e 64 7d 20 7b 73 65 | 74 20 65 6e 64 20 5b 6e |end} {se|t end [n|
|00003000| 65 78 74 4c 69 6e 65 53 | 74 61 72 74 20 24 73 74 |extLineS|tart $st|
|00003010| 61 72 74 5d 7d 0d 09 0d | 09 73 65 74 20 74 65 78 |art]}...|.set tex|
|00003020| 74 20 5b 73 70 6c 69 74 | 20 5b 67 65 74 54 65 78 |t [split| [getTex|
|00003030| 74 20 24 73 74 61 72 74 | 20 5b 65 78 70 72 20 24 |t $start| [expr $|
|00003040| 65 6e 64 20 2d 20 31 5d | 5d 20 22 5c 72 22 5d 0d |end - 1]|] "\r"].|
|00003050| 09 0d 09 73 65 74 20 74 | 65 78 74 6f 75 74 20 22 |...set t|extout "|
|00003060| 22 0d 09 0d 09 66 6f 72 | 65 61 63 68 20 6c 69 6e |"....for|each lin|
|00003070| 65 20 24 74 65 78 74 20 | 7b 0d 09 09 69 66 20 7b |e $text |{...if {|
|00003080| 5b 73 74 72 69 6e 67 20 | 69 6e 64 65 78 20 24 6c |[string |index $l|
|00003090| 69 6e 65 20 30 5d 20 3d | 3d 20 24 73 68 69 66 74 |ine 0] =|= $shift|
|000030a0| 43 68 61 72 7d 20 7b 0d | 09 09 09 6c 61 70 70 65 |Char} {.|...lappe|
|000030b0| 6e 64 20 74 65 78 74 6f | 75 74 20 5b 73 74 72 69 |nd texto|ut [stri|
|000030c0| 6e 67 20 72 61 6e 67 65 | 20 24 6c 69 6e 65 20 31 |ng range| $line 1|
|000030d0| 20 65 6e 64 5d 0d 09 09 | 7d 20 65 6c 73 65 20 7b | end]...|} else {|
|000030e0| 0d 09 09 09 6c 61 70 70 | 65 6e 64 20 74 65 78 74 |....lapp|end text|
|000030f0| 6f 75 74 20 24 6c 69 6e | 65 0d 09 09 7d 0d 09 7d |out $lin|e...}..}|
|00003100| 0d 0d 09 73 65 74 20 74 | 65 78 74 20 5b 6a 6f 69 |...set t|ext [joi|
|00003110| 6e 20 24 74 65 78 74 6f | 75 74 20 22 5c 72 22 5d |n $texto|ut "\r"]|
|00003120| 09 0d 09 72 65 70 6c 61 | 63 65 54 65 78 74 20 24 |...repla|ceText $|
|00003130| 73 74 61 72 74 20 5b 65 | 78 70 72 20 24 65 6e 64 |start [e|xpr $end|
|00003140| 20 2d 20 31 5d 20 24 74 | 65 78 74 0d 09 73 65 6c | - 1] $t|ext..sel|
|00003150| 65 63 74 20 24 73 74 61 | 72 74 20 5b 65 78 70 72 |ect $sta|rt [expr|
|00003160| 20 31 20 2b 20 24 73 74 | 61 72 74 20 2b 20 5b 73 | 1 + $st|art + [s|
|00003170| 74 72 69 6e 67 20 6c 65 | 6e 67 74 68 20 24 74 65 |tring le|ngth $te|
|00003180| 78 74 5d 5d 0d 7d 0d 0d | 0d 70 72 6f 63 20 73 68 |xt]].}..|.proc sh|
|00003190| 69 66 74 52 69 67 68 74 | 20 7b 7d 20 7b 0d 09 67 |iftRight| {} {..g|
|000031a0| 6c 6f 62 61 6c 09 73 68 | 69 66 74 43 68 61 72 0d |lobal.sh|iftChar.|
|000031b0| 09 0d 09 73 65 74 20 73 | 74 61 72 74 20 5b 6c 69 |...set s|tart [li|
|000031c0| 6e 65 53 74 61 72 74 20 | 5b 67 65 74 50 6f 73 5d |neStart |[getPos]|
|000031d0| 5d 0d 09 73 65 74 20 65 | 6e 64 20 5b 6e 65 78 74 |]..set e|nd [next|
|000031e0| 4c 69 6e 65 53 74 61 72 | 74 20 5b 65 78 70 72 20 |LineStar|t [expr |
|000031f0| 5b 73 65 6c 45 6e 64 5d | 20 2d 20 31 5d 5d 0d 09 |[selEnd]| - 1]]..|
|00003200| 69 66 20 7b 24 73 74 61 | 72 74 20 3e 3d 20 24 65 |if {$sta|rt >= $e|
|00003210| 6e 64 7d 20 7b 73 65 74 | 20 65 6e 64 20 5b 6e 65 |nd} {set| end [ne|
|00003220| 78 74 4c 69 6e 65 53 74 | 61 72 74 20 24 73 74 61 |xtLineSt|art $sta|
|00003230| 72 74 5d 7d 0d 09 0d 09 | 73 65 74 20 74 65 78 74 |rt]}....|set text|
|00003240| 20 5b 73 70 6c 69 74 20 | 5b 67 65 74 54 65 78 74 | [split |[getText|
|00003250| 20 24 73 74 61 72 74 20 | 5b 65 78 70 72 20 24 65 | $start |[expr $e|
|00003260| 6e 64 20 2d 20 31 5d 5d | 20 22 5c 72 22 5d 0d 09 |nd - 1]]| "\r"]..|
|00003270| 0d 09 73 65 74 20 74 65 | 78 74 6f 75 74 20 22 22 |..set te|xtout ""|
|00003280| 0d 09 0d 09 66 6f 72 65 | 61 63 68 20 6c 69 6e 65 |....fore|ach line|
|00003290| 20 24 74 65 78 74 20 7b | 0d 09 09 6c 61 70 70 65 | $text {|...lappe|
|000032a0| 6e 64 20 74 65 78 74 6f | 75 74 20 24 73 68 69 66 |nd texto|ut $shif|
|000032b0| 74 43 68 61 72 24 6c 69 | 6e 65 0d 09 7d 0d 09 0d |tChar$li|ne..}...|
|000032c0| 09 73 65 74 20 74 65 78 | 74 20 5b 6a 6f 69 6e 20 |.set tex|t [join |
|000032d0| 24 74 65 78 74 6f 75 74 | 20 22 5c 72 22 5d 09 0d |$textout| "\r"]..|
|000032e0| 09 72 65 70 6c 61 63 65 | 54 65 78 74 20 24 73 74 |.replace|Text $st|
|000032f0| 61 72 74 20 5b 65 78 70 | 72 20 24 65 6e 64 20 2d |art [exp|r $end -|
|00003300| 20 31 5d 20 24 74 65 78 | 74 0d 09 73 65 6c 65 63 | 1] $tex|t..selec|
|00003310| 74 20 24 73 74 61 72 74 | 20 5b 65 78 70 72 20 31 |t $start| [expr 1|
|00003320| 20 2b 20 24 73 74 61 72 | 74 20 2b 20 5b 73 74 72 | + $star|t + [str|
|00003330| 69 6e 67 20 6c 65 6e 67 | 74 68 20 24 74 65 78 74 |ing leng|th $text|
|00003340| 5d 5d 0d 7d 0d 0d 0d 0d | 23 20 72 67 6c 6f 62 20 |]].}....|# rglob |
|00003350| 5b 6f 70 74 69 6f 6e 20 | 6c 69 73 74 5d 20 64 69 |[option |list] di|
|00003360| 72 20 70 61 74 0d 23 20 | 27 64 69 72 27 20 73 68 |r pat.# |'dir' sh|
|00003370| 6f 75 6c 64 20 62 65 20 | 61 20 70 72 6f 70 65 72 |ould be |a proper|
|00003380| 6c 79 20 66 6f 72 6d 65 | 64 20 64 69 72 65 63 74 |ly forme|d direct|
|00003390| 6f 72 79 2c 20 65 6e 64 | 69 6e 67 20 77 2f 20 61 |ory, end|ing w/ a|
|000033a0| 20 27 3a 27 2e 20 27 70 | 61 74 27 20 73 68 6f 75 | ':'. 'p|at' shou|
|000033b0| 6c 64 20 62 65 20 0d 23 | 20 61 20 73 69 6d 70 6c |ld be .#| a simpl|
|000033c0| 65 20 70 61 74 74 65 72 | 6e 20 77 2f 20 6e 6f 20 |e patter|n w/ no |
|000033d0| 64 69 72 65 63 74 6f 72 | 79 20 73 70 65 63 69 66 |director|y specif|
|000033e0| 69 63 61 74 69 6f 6e 73 | 20 28 69 2e 65 2e 20 22 |ications| (i.e. "|
|000033f0| 2a 2e 63 22 29 2e 0d 70 | 72 6f 63 20 72 67 6c 6f |*.c")..p|roc rglo|
|00003400| 62 20 7b 6f 70 74 6c 69 | 73 74 20 64 69 72 20 70 |b {optli|st dir p|
|00003410| 61 74 7d 20 7b 0d 0d 09 | 73 65 74 20 63 6d 64 20 |at} {...|set cmd |
|00003420| 5b 63 6f 6e 63 61 74 20 | 67 6c 6f 62 20 24 6f 70 |[concat |glob $op|
|00003430| 74 6c 69 73 74 5d 0d 09 | 6c 61 70 70 65 6e 64 20 |tlist]..|lappend |
|00003440| 63 6d 64 20 24 64 69 72 | 24 70 61 74 0d 09 69 66 |cmd $dir|$pat..if|
|00003450| 20 7b 5b 63 61 74 63 68 | 20 7b 65 76 61 6c 20 24 | {[catch| {eval $|
|00003460| 63 6d 64 7d 20 66 69 6c | 65 73 5d 7d 20 7b 0d 09 |cmd} fil|es]} {..|
|00003470| 09 73 65 74 20 66 69 6c | 65 73 20 22 22 0d 09 7d |.set fil|es ""..}|
|00003480| 0d 09 0d 09 69 66 20 7b | 21 5b 63 61 74 63 68 20 |....if {|![catch |
|00003490| 7b 67 6c 6f 62 20 24 64 | 69 72 2a 7d 20 61 6c 6c |{glob $d|ir*} all|
|000034a0| 5d 7d 20 7b 0d 09 09 66 | 6f 72 65 61 63 68 20 66 |]} {...f|oreach f|
|000034b0| 20 24 61 6c 6c 20 7b 0d | 09 09 09 69 66 20 7b 5b | $all {.|...if {[|
|000034c0| 66 69 6c 65 20 69 73 64 | 69 72 20 24 66 5d 7d 20 |file isd|ir $f]} |
|000034d0| 7b 0d 09 09 09 09 73 65 | 74 20 66 69 6c 65 73 20 |{.....se|t files |
|000034e0| 5b 63 6f 6e 63 61 74 20 | 24 66 69 6c 65 73 20 5b |[concat |$files [|
|000034f0| 72 67 6c 6f 62 20 24 6f | 70 74 6c 69 73 74 20 24 |rglob $o|ptlist $|
|00003500| 66 3a 20 24 70 61 74 5d | 5d 0d 09 09 09 7d 0d 09 |f: $pat]|]....}..|
|00003510| 09 7d 0d 09 7d 0d 09 72 | 65 74 75 72 6e 20 24 66 |.}..}..r|eturn $f|
|00003520| 69 6c 65 73 0d 7d 0d 0d | 0d 70 72 6f 63 20 73 77 |iles.}..|.proc sw|
|00003530| 69 74 63 68 41 70 70 20 | 7b 7d 20 7b 0d 09 73 65 |itchApp |{} {..se|
|00003540| 74 20 70 72 6f 63 73 20 | 22 22 0d 09 66 6f 72 65 |t procs |""..fore|
|00003550| 61 63 68 20 70 20 5b 70 | 72 6f 63 65 73 73 65 73 |ach p [p|rocesses|
|00003560| 5d 20 7b 0d 09 09 6c 61 | 70 70 65 6e 64 20 70 72 |] {...la|ppend pr|
|00003570| 6f 63 73 20 5b 6c 69 6e | 64 65 78 20 24 70 20 30 |ocs [lin|dex $p 0|
|00003580| 5d 0d 09 7d 0d 09 73 65 | 74 20 74 6f 20 5b 6c 69 |]..}..se|t to [li|
|00003590| 73 74 70 69 63 6b 20 2d | 70 20 22 53 77 69 74 63 |stpick -|p "Switc|
|000035a0| 68 20 74 6f 20 61 70 70 | 3a 22 20 24 70 72 6f 63 |h to app|:" $proc|
|000035b0| 73 5d 0d 09 69 66 20 7b | 5b 73 74 72 69 6e 67 20 |s]..if {|[string |
|000035c0| 6c 65 6e 67 74 68 20 24 | 74 6f 5d 7d 20 7b 0d 09 |length $|to]} {..|
|000035d0| 09 73 77 69 74 63 68 54 | 6f 20 24 74 6f 0d 09 7d |.switchT|o $to..}|
|000035e0| 0d 7d 0d 0d 0d 70 72 6f | 63 20 73 65 6c 65 63 74 |.}...pro|c select|
|000035f0| 41 6c 6c 20 7b 7d 20 7b | 0d 09 73 65 6c 65 63 74 |All {} {|..select|
|00003600| 20 30 20 5b 6d 61 78 50 | 6f 73 5d 0d 7d 0d 00 00 | 0 [maxP|os].}...|
|00003610| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003620| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003630| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003640| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003650| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003660| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003670| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003680| 00 00 01 00 00 00 01 4c | 00 00 00 4c 00 00 00 32 |.......L|...L...2|
|00003690| 20 7b 5b 6c 69 6e 64 65 | 78 20 5b 70 6f 73 54 6f | {[linde|x [posTo|
|000036a0| 52 6f 77 43 6f 6c 20 5b | 73 65 6c 45 6e 64 5d 5d |RowCol [|selEnd]]|
|000036b0| 08 6d 69 73 63 2e 74 63 | 6c 00 02 00 00 00 50 61 |.misc.tc|l.....Pa|
|000036c0| 72 74 53 49 54 21 00 00 | 00 00 00 00 00 00 00 00 |rtSIT!..|........|
|000036d0| 00 00 50 61 72 74 53 49 | 54 21 00 00 00 00 00 00 |..PartSI|T!......|
|000036e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000036f0| 00 00 a9 b0 91 a2 00 00 | 00 00 00 00 01 7e 65 74 |........|.....~et|
|00003700| 20 63 68 61 72 73 20 5b | 6d 61 78 50 6f 73 5d 0d | chars [|maxPos].|
|00003710| 09 09 73 65 74 20 6c 69 | 6e 65 73 20 5b 6c 69 6e |..set li|nes [lin|
|00003720| 64 65 78 20 5b 70 6f 73 | 54 6f 52 6f 77 43 6f 6c |dex [pos|ToRowCol|
|00003730| 20 24 63 68 61 72 73 5d | 20 30 5d 0d 09 09 73 65 | $chars]| 0]...se|
|00003740| 74 20 74 65 78 74 20 5b | 67 65 74 54 65 78 74 20 |t text [|getText |
|00003750| 30 20 5b 6d 61 78 50 6f | 73 5d 5d 0d 09 7d 0d 09 |0 [maxPo|s]]..}..|
|00003760| 69 66 20 7b 5b 72 65 67 | 73 75 62 20 2d 61 6c 6c |if {[reg|sub -all|
|00003770| 20 7b 5b 21 3d 3b 2e 2c | 5c 28 5c 29 3a 5c 7b 5c | {[!=;.,|\(\):\{\|
|00003780| 00 00 00 48 00 09 4d 6f | 6e 61 63 6f 00 00 00 a2 |...H..Mo|naco....|
|00003790| 36 b4 00 00 00 00 00 b1 | 47 42 00 02 f7 6c 03 a6 |6.......|GB...l..|
|000037a0| 00 ab 5c 5c 00 00 00 04 | 00 04 00 3c 00 13 01 d1 |..\\....|...<....|
|000037b0| 02 71 00 3c 00 13 01 d1 | 02 71 00 02 08 17 00 00 |.q.<....|.q......|
|000037c0| 04 e1 00 00 04 e1 00 00 | 04 e1 01 00 00 00 01 00 |........|........|
|000037d0| 00 00 01 4c 00 00 00 4c | 00 00 00 32 00 a2 36 b4 |...L...L|...2..6.|
|000037e0| 09 ec 00 00 00 1c 00 32 | 00 00 4d 50 53 52 00 00 |.......2|..MPSR..|
|000037f0| 00 0a 03 ed ff ff 00 00 | 00 00 00 a8 46 34 00 00 |........|....F4..|
+--------+-------------------------+-------------------------+--------+--------+